QCborMap Class
QCborMapクラスは、CBORで表現可能な連想コンテナを保持するために使用される。詳細...
Header: | #include <QCborMap> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
- 継承メンバを含む全メンバ一覧
- QCborMapはQtのCBORサポートの一部です。
このクラスは強く比較可能です。
このクラスはQCborValue および QCborValueConstRef と強く比較可能です。
注意:このクラスの関数は全てリエントラントです。
パブリック型
class | ConstIterator |
class | Iterator |
const_iterator | |
iterator | |
key_type | |
mapped_type | |
size_type | |
value_type |
パブリック関数
QCborMap() | |
QCborMap(std::initializer_list<QCborMap::value_type> args) | |
QCborMap(const QCborMap &other) | |
~QCborMap() | |
QCborMap::iterator | begin() |
QCborMap::const_iterator | begin() const |
QCborMap::const_iterator | cbegin() const |
QCborMap::const_iterator | cend() const |
void | clear() |
int | compare(const QCborMap &other) const |
QCborMap::const_iterator | constBegin() const |
QCborMap::const_iterator | constEnd() const |
QCborMap::const_iterator | constFind(qint64 key) const |
QCborMap::const_iterator | constFind(QLatin1StringView key) const |
QCborMap::const_iterator | constFind(const QCborValue &key) const |
QCborMap::const_iterator | constFind(const QString &key) const |
bool | contains(const QCborValue &key) const |
bool | contains(qint64 key) const |
bool | contains(QLatin1StringView key) const |
bool | contains(const QString &key) const |
bool | empty() const |
QCborMap::iterator | end() |
QCborMap::const_iterator | end() const |
QCborMap::iterator | erase(QCborMap::const_iterator it) |
QCborMap::iterator | erase(QCborMap::iterator it) |
QCborValue | extract(QCborMap::const_iterator it) |
QCborValue | extract(QCborMap::iterator it) |
QCborMap::iterator | find(qint64 key) |
QCborMap::const_iterator | find(qint64 key) const |
QCborMap::iterator | find(QLatin1StringView key) |
QCborMap::iterator | find(const QCborValue &key) |
QCborMap::iterator | find(const QString &key) |
QCborMap::const_iterator | find(QLatin1StringView key) const |
QCborMap::const_iterator | find(const QCborValue &key) const |
QCborMap::const_iterator | find(const QString &key) const |
QCborMap::iterator | insert(QCborMap::value_type v) |
QCborMap::iterator | insert(QLatin1StringView key, const QCborValue &value) |
QCborMap::iterator | insert(const QCborValue &key, const QCborValue &value) |
QCborMap::iterator | insert(const QString &key, const QCborValue &value) |
QCborMap::iterator | insert(qint64 key, const QCborValue &value) |
bool | isEmpty() const |
QList<QCborValue> | keys() const |
void | remove(const QCborValue &key) |
void | remove(qint64 key) |
void | remove(QLatin1StringView key) |
void | remove(const QString &key) |
qsizetype | size() const |
void | swap(QCborMap &other) |
QCborValue | take(QLatin1StringView key) |
QCborValue | take(const QCborValue &key) |
QCborValue | take(const QString &key) |
QCborValue | take(qint64 key) |
QCborValue | toCborValue() const |
QJsonObject | toJsonObject() const |
QVariantHash | toVariantHash() const |
QVariantMap | toVariantMap() const |
QCborValue | value(const QCborValue &key) const |
QCborValue | value(qint64 key) const |
QCborValue | value(QLatin1StringView key) const |
QCborValue | value(const QString &key) const |
QCborMap & | operator=(const QCborMap &other) |
QCborValueRef | operator[](qint64 key) |
const QCborValue | operator[](const QCborValue &key) const |
const QCborValue | operator[](qint64 key) const |
QCborValueRef | operator[](QLatin1StringView key) |
QCborValueRef | operator[](const QCborValue &key) |
QCborValueRef | operator[](const QString &key) |
const QCborValue | operator[](QLatin1StringView key) const |
const QCborValue | operator[](const QString &key) const |
静的パブリック・メンバー
QCborMap | fromJsonObject(const QJsonObject &obj) |
(since 6.3) QCborMap | fromJsonObject(QJsonObject &&obj) |
QCborMap | fromVariantHash(const QVariantHash &hash) |
QCborMap | fromVariantMap(const QVariantMap &map) |
関連する非メンバー
bool | operator!=(const QCborMap &lhs, const QCborMap &rhs) |
bool | operator<(const QCborMap &lhs, const QCborMap &rhs) |
bool | operator<=(const QCborMap &lhs, const QCborMap &rhs) |
bool | operator==(const QCborMap &lhs, const QCborMap &rhs) |
bool | operator>(const QCborMap &lhs, const QCborMap &rhs) |
bool | operator>=(const QCborMap &lhs, const QCborMap &rhs) |
詳細説明
このクラスはCBORの連想コンテナ、つまりキーと値型の間のマップを保持するために使用できる。CBORはConcise Binary Object Representationの略で、JSONのスーパーセットである非常にコンパクトなバイナリデータ符号化形式です。IETFのConstrained RESTful Environments(CoRE)WGによって作成され、多くの新しいRFCで使用されている。これは、CoAPプロトコルと一緒に使われることを意図している。
JSONやQVariantMap とは異なり、CBORマップのキーは文字列だけでなく、どのような型でも構わない。そのため、QCborMapは実質的にQCborValue のキーとQCborValue の値要素の間のマップとなる。
ただし、QCborMap は、キー・パラメータを受け取るすべてのメンバ関数に対して、整数や文字列を効率的に処理するオーバーロードを提供します。実際、整数キーの使用は推奨されている。なぜなら、整数キーの方が送信に使用するバイト数が少なく、エンコードやデコードが簡単だからである。IETF CoRE WGがCBOR専用に設計した新しいプロトコルは、整数キーを使用することが知られている。
QCborMapはソートされていないため、キーの検索は線形複雑度(O(n))を持つ。QCborMapは実際には挿入された順番に要素を保持する。つまり、ソートされた順番に慎重に要素を挿入することで、ソートされたQCborMapを作成することが可能である。CBORではソートは必須ではないが、推奨している。
QCborMapは、QVariantMap 、QJsonObject との間で変換することもできます。ただし、変換の際、文字列でないキーは、QCborMapに変換しても元に戻らない一方向の方法で文字列化されます。
QCborArray,QCborValue,QJsonDocument,QVariantMap,CBORデータの解析と表示,Serialization Converter,ゲームの保存と読み込みも参照 。
メンバ型ドキュメント
QCborMap::const_iterator
のシノニム。QCborMap::ConstIterator
QCborMap::iterator
QCborMap::Iterator の同義語。
QCborMap::key_type
このマップのキータイプ。QCborMap キーはどのCBORタイプでもよいので、これはQCborValue 。
QCborMap::mapped_type
値)にマップされる型、つまりQCborValue 。
QCborMap::size_type
QCborMap がサイズに使用する型。
QCborMap::value_type
このコンテナに格納される値。
メンバ関数 ドキュメント
QCborMap::iterator QCborMap::find(qint64 key)
QCborMap::const_iterator QCborMap::find(qint64 key) const
マップにそのようなペアが含まれている場合、キーがkey であるキーと値のペアへのマップ・イテレーターを返します。含まれていない場合、この関数はend() を返します。
CBORは整数キーの使用を推奨している。なぜなら、整数キーの方が占有するスペースが少なく、エンコードやデコードが簡単だからである。
マップがkey に等しいキーを複数含む場合、この関数がどれを見つけるかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの挿入は通常、 送信側に問題があることを示す。
value(qint64)、operator[](qint64)、constFind(qint64)、remove(qint64)、contains(qint64)、value(QLatin1StringView)、value(const QString &)、value(const QCborValue &)も参照 。
QCborMap::iterator QCborMap::find(QLatin1StringView key)
QCborMap::const_iterator QCborMap::find(QLatin1StringView key) const
これはオーバーロードされた関数です。
マップにそのようなペアが含まれている場合、キーがkey であるキーと値のペアへのマップ・イテレータを返します。そうでない場合、この関数はend() を返します。
マップがkey に等しいキーを複数含む場合、この関数がどれを見つけるかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの挿入は通常、 送信側に問題があることを示す。
value(QLatin1StringView),operator[](QLatin1StringView),constFind(QLatin1StringView),remove(QLatin1StringView),contains(QLatin1StringView),value(qint64),value(const QString &),value(const QCborValue &)も参照 。
QCborMap::iterator QCborMap::find(const QString &key)
QCborMap::const_iterator QCborMap::find(const QString &key) const
これはオーバーロードされた関数です。
キーがkey であるキーと値のペアがマップに含まれている場合、そのペアへのマップ・イテレータを返します。そうでない場合、この関数はend() を返します。
マップがkey に等しいキーを複数含む場合、この関数がどれを見つけるかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
value(const QString &),operator[](const QString &),constFind(const QString &),remove(const QString &),contains(const QString &),value(qint64),value(QLatin1StringView),value(const QCborValue &)も参照 。
QCborMap::iterator QCborMap::find(const QCborValue &key)
QCborMap::const_iterator QCborMap::find(const QCborValue &key) const
これはオーバーロードされた関数です。
key をキーとするキーと値のペアへのマップ・イテレータを返します。そうでない場合、この関数はend() を返します。
マップがkey に等しいキーを複数含む場合、この関数がどれを見つけるかは未定です。QCborMap は重複キーの挿入を許可しませんが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能です。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題が あることを示す。
value(const QCborValue &),operator[](const QCborValue &),constFind(const QCborValue &),remove(const QCborValue &),contains(const QCborValue &),value(qint64),value(QLatin1StringView),value(const QString &)も参照 。
QCborValue QCborMap::extract(QCborMap::const_iterator it)
QCborValue QCborMap::extract(QCborMap::iterator it)
イテレータit が示す位置のマップから値を抽出し、抽出した値を返します。
insert()、erase()、take()、remove()も参照してください 。
[noexcept]
QCborMap::QCborMap()
空の CBOR Map オブジェクトを構築します。
isEmpty()も参照して ください。
QCborMap::QCborMap(std::initializer_list<QCborMap::value_type> args)
以下の例のように、args にあるブレース初期化リストの項目で QCborMap を構築します:
QCborMap map = { {0, "Hello"}, {1, "World"}, {"foo", nullptr}, {"bar", QCborArray{0, 1, 2, 3, 4}} };
[noexcept]
QCborMap::QCborMap(const QCborMap &other)
other のコピーである QCborMap オブジェクトを作成します。
[noexcept]
QCborMap::~QCborMap()
このQCborMap オブジェクトを破棄し、それが所有する関連リソースを解放します。
QCborMap::iterator QCborMap::begin()
このマップの最初のキーと値のペアを指すマップ・イテレーターを返します。このマップが空の場合、返されるイテレータはend() と同じになります。
constBegin() およびend()も参照 。
QCborMap::const_iterator QCborMap::begin() const
このマップの最初のキーと値のペアを指すマップ・イテレータを返します。このマップが空の場合、返されるイテレータはconstEnd() と同じになります。
QCborMap::const_iterator QCborMap::cbegin() const
このマップの最初のキーと値のペアを指すマップ・イテレータを返します。このマップが空の場合、返されるイテレータはconstEnd() と同じになります。
QCborMap::const_iterator QCborMap::cend() const
マップの最後の要素から直前の要素を表すマップ・イテレータを返します。
begin()、constBegin()、find() およびconstFind() も参照 。
void QCborMap::clear()
このマップを空にします。
isEmpty()も参照 。
[noexcept]
int QCborMap::compare(const QCborMap &other) const
このマップとother を比較し、各要素を順番に比較して、このマップをother より前(結果が負 の場合)にソートすべきか、それとも より後(結果が正の場合)にソートすべきかを示す整数を返します。この関数が0を返す場合、2つのマップは等しく、同じ要素を含む。
CBORマップは順不同であることに注意。つまり、まったく同じペアを含むが順序が異なる2つのマップは、やはり異なる比較をすることになる。これを避けるために、例えばキーの値の昇順など、予測可能な順序でマップに要素を挿入することが推奨される。実際、キーがソートされた順序のマップはCBOR表現に必要です。
CBORのソート順の詳細については、QCborValue::compare ()を参照。
QCborValue::compare(),QCborArray::compare(),operator==()も参照 。
QCborMap::const_iterator QCborMap::constBegin() const
このマップの最初のキーと値のペアを指すマップ・イテレータを返します。このマップが空の場合、返されるイテレータはconstEnd() と同じになります。
QCborMap::const_iterator QCborMap::constEnd() const
マップの最後の要素から直前の要素を表すマップ・イテレータを返します。
begin()、constBegin()、find()、constFind()も参照 。
QCborMap::const_iterator QCborMap::constFind(qint64 key) const
key をキーとするキーと値のペアがマップに含まれている場合は、そのペアへのマップ・イテレー タを返します。そうでない場合、この関数はconstEnd() を返します。
CBORは整数キーを使用することを推奨します。なぜなら、整数キーの方が占有するスペースが少なく、エンコードやデコードが簡単だからです。
マップがkey に等しいキーを複数含む場合、この関数がどれを見つけるかは未定義である。QCborMap は重複キーの挿入を許可しないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの挿入は通常、 送信側に問題があることを示す。
value(qint64)、operator[](qint64)、find(qint64)、remove(qint64)、contains(qint64)、value(QLatin1StringView)、value(const QString &)、value(const QCborValue &)も参照 。
QCborMap::const_iterator QCborMap::constFind(QLatin1StringView key) const
これはオーバーロードされた関数です。
マップにそのようなペアが含まれている場合、キーがkey であるキーと値のペアへのマップ・イテレータを返します。そうでない場合、この関数はconstEnd() を返します。
マップがkey に等しいキーを複数含む場合、この関数がどれを見つけるかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの挿入は通常、 送信側に問題があることを示す。
value(QLatin1StringView),operator[](QLatin1StringView),find(QLatin1StringView),remove(QLatin1StringView),contains(QLatin1StringView),value(qint64),value(const QString &),value(const QCborValue &)も参照 。
QCborMap::const_iterator QCborMap::constFind(const QCborValue &key) const
これはオーバーロードされた関数です。
マップにそのようなペアが含まれている場合、キーがkey であるキーと値のペアへのマップ・イテレータを返します。そうでない場合、この関数はconstEnd() を返します。
マップがkey に等しいキーを複数含む場合、この関数がどれを見つけるかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題が あることを示す。
value(const QCborValue &),operator[](const QCborValue &),find(const QCborValue &),remove(const QCborValue &),contains(const QCborValue &),value(qint64),value(QLatin1StringView),value(const QString &)も参照 。
QCborMap::const_iterator QCborMap::constFind(const QString &key) const
これはオーバーロードされた関数です。
マップにそのようなペアが含まれている場合、キーがkey であるキーと値のペアへのマップ・イテレータを返します。そうでない場合、この関数はconstEnd() を返します。
マップがkey に等しいキーを複数含む場合、この関数がどれを見つけるかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
value(const QString &),operator[](const QString &),find(const QString &),remove(const QString &),contains(const QString &),value(qint64),value(QLatin1StringView),value(const QCborValue &)も参照してください 。
bool QCborMap::contains(const QCborValue &key) const
このマップに、キーkey で識別されるキーと値のペアが含まれている場合、true を返します。
value(const QCborValue &),operator[](const QCborValue &),find(const QCborValue &),remove(const QCborValue &),contains(qint64),remove(QLatin1StringView), およびremove(const QString &)も参照してください 。
bool QCborMap::contains(qint64 key) const
このマップがキーkey で識別されるキーと値のペアを含んでいる場合、true を返します。CBORは整数キーの使用を推奨しています。なぜなら、整数キーの方が占有するスペースが少なく、エンコードやデコードが簡単だからです。
value(qint64),operator[](qint64),find(qint64),remove(qint64),contains(QLatin1StringView),remove(const QString &), およびremove(const QCborValue &)も参照してください 。
bool QCborMap::contains(QLatin1StringView key) const
これはオーバーロードされた関数です。
このマップに、キーkey で識別されるキーと値のペアが含まれている場合、true を返します。
value(QLatin1StringView),operator[](QLatin1StringView),find(QLatin1StringView),remove(QLatin1StringView),contains(qint64),remove(const QString &), およびremove(const QCborValue &)も参照 。
bool QCborMap::contains(const QString &key) const
これはオーバーロードされた関数です。
このマップに、キーkey で識別されるキーと値のペアが含まれている場合、true を返します。
value(const QString &),operator[](const QString &),find(const QString &),remove(const QString &),contains(qint64),remove(QLatin1StringView), およびremove(const QCborValue &)も参照してください 。
bool QCborMap::empty() const
isEmpty() のシノニム。この関数は、標準ライブラリ API を使用する汎用コードとの互換性のために提供されます。
このマップが空の場合、true を返します (size() == 0)。
QCborMap::iterator QCborMap::end()
map iterator マップの最後の要素から直前の要素を表すイテレータを返します。
begin()、constBegin()、find() およびconstFind() も参照 。
QCborMap::const_iterator QCborMap::end() const
マップの最後の要素から直前の要素を表すマップ反復子を返します。
begin()、constBegin()、find() およびconstFind()も参照 。
QCborMap::iterator QCborMap::erase(QCborMap::const_iterator it)
マップ・イテレータit が指すキーと値のペアを削除し、削除後の次の要素へのポインタを返します。
remove()、begin()、end()、insert()、extract()も参照 。
QCborMap::iterator QCborMap::erase(QCborMap::iterator it)
これはオーバーロードされた関数です。
マップ・イテレータit が指すキーと値のペアを削除し、削除後の次の要素へのポインタを返します。
remove()、begin()、end()、insert()も参照 。
[static]
QCborMap QCborMap::fromJsonObject(const QJsonObject &obj)
QCborValue::fromJson() を使用して、obj オブジェクトで見つかったすべての JSON アイテムを CBOR に変換し、それらの要素で構成されるマップを返します。
CBORの型システムはJSONのスーパーセットなので、この変換はロスレスである。さらに、この関数によって返されたマップは、toJsonObject()を使用することで、元のobj 。
toJsonObject(),toVariantMap(),QCborValue::fromJsonValue(),QCborArray::fromJsonArray()も参照 。
[static noexcept, since 6.3]
QCborMap QCborMap::fromJsonObject(QJsonObject &&obj)
これはオーバーロードされた関数です。
この関数は Qt 6.3 で導入されました。
[static]
QCborMap QCborMap::fromVariantHash(const QVariantHash &hash)
QCborValue::fromVariant() を使用して、hash のすべての項目を CBOR に変換し、それらの要素で構成されるマップを返します。
QVariant からの変換は完全にロスレスではありません。詳しくはQCborValue::fromVariant() のドキュメントを参照してください。
toVariantHash()、fromVariantMap()、fromJsonObject()、QCborValue::fromVariant()も参照 。
[static]
QCborMap QCborMap::fromVariantMap(const QVariantMap &map)
QCborValue::fromVariant() を使用して、map のすべての項目を CBOR に変換し、それらの要素で構成されるマップを返します。
QVariant からの変換は完全にはロスレスではない。詳しくはQCborValue::fromVariant() のドキュメントを参照。
toVariantMap()、fromVariantHash()、fromJsonObject()、QCborValue::fromVariant()も参照 。
QCborMap::iterator QCborMap::insert(QCborMap::value_type v)
これはオーバーロードされた関数です。
v のキーと値のペアをこのマップに挿入し、新しく挿入されたペアを指すマップ・イテレータを返します。
マップにすでにv.first
と等しいキーがあった場合、その値はv.second
で上書きされます。
operator[] 、erase()、extract()も参照のこと 。
QCborMap::iterator QCborMap::insert(QLatin1StringView key, const QCborValue &value)
これはオーバーロードされた関数である。
このマップにキーkey と値value を挿入し、新しく挿入されたペアを指すマップ・イテレータを返す。
マップに既にkey と等しいキーがあった場合、その値はvalue で上書きされます。
erase(),remove(QLatin1StringView),value(QLatin1StringView),operator[](QLatin1StringView),find(QLatin1StringView),contains(QLatin1StringView),take(QLatin1StringView),extract()も参照 。
QCborMap::iterator QCborMap::insert(const QCborValue &key, const QCborValue &value)
これはオーバーロードされた関数です。
キーkey と値value をこのマップに挿入し、新しく挿入されたペアを指すマップ・イテレータを返します。
マップに既にkey と等しいキーがあった場合、その値はvalue で上書きされます。
erase(),remove(const QCborValue &),value(const QCborValue &),operator[](const QCborValue &),find(const QCborValue &),contains(const QCborValue &),take(const QCborValue &),extract()も参照 。
QCborMap::iterator QCborMap::insert(const QString &key, const QCborValue &value)
これはオーバーロードされた関数です。
このマップにキーkey と値value を挿入し、新しく挿入されたペアを指すマップ・イテレーターを返します。
マップにすでにkey と等しいキーがあった場合、その値はvalue で上書きされます。
erase(),remove(const QString &),value(const QString &),operator[](const QString &),find(const QString &),contains(const QString &),take(const QString &),extract()も参照 。
QCborMap::iterator QCborMap::insert(qint64 key, const QCborValue &value)
これはオーバーロードされた関数です。
このマップにキーkey と値value を挿入し、新しく挿入されたペアを指すマップ・イテレータを返します。
マップにすでにkey と等しいキーがあった場合、その値はvalue で上書きされます。
erase()、remove(qint64)、value(qint64)、operator[](qint64)、find(qint64)、contains(qint64)、take(qint64)、extract()も参照 。
bool QCborMap::isEmpty() const
このマップが空の場合(つまり、size() が 0 の場合)、true を返す。
QList<QCborValue> QCborMap::keys() const
このマップ内のすべてのキーのリストを返します。
QMap::keys() およびQHash::keys() も参照 。
void QCborMap::remove(const QCborValue &key)
キーkey および対応する値が見つかった場合は、その値をマップから削除します。マップにそのようなキーがない場合、この関数は何もしません。
マップにkey と等しいキーが複数含まれる場合、この関数がどれを削除するかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つ CBOR ストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
remove(qint64), remove(QLatin1StringView), remove(constQString &).
value(const QCborValue &),operator[](const QCborValue &),find(const QCborValue &),contains(const QCborValue &)も参照 。
void QCborMap::remove(qint64 key)
マップからキーkey と対応する値が見つかった場合、それを削除します。マップにそのようなキーがない場合、この関数は何もしません。
マップにkey と等しいキーが複数含まれている場合、この関数がどれを削除するかは未定義です。QCborMap は重複キーの挿入を許可しませんが、重複キーを持つ CBOR ストリームをデコードすることで、そのようなマップを作成することは可能です。通常、重複キーの挿入は許可されておらず、重複キーの挿入は通常、送信側に 問題があることを示す。
remove(QLatin1StringView), remove(constQString &), remove(constQCborValue &).
value(qint64)、operator[](qint64)、find(qint64)、contains(qint64)も参照 。
void QCborMap::remove(QLatin1StringView key)
これはオーバーロードされた関数です。
マップからキーkey と対応する値が見つかればそれを削除する。マップにそのようなキーがない場合、この関数は何もしない。
マップがkey に等しいキーを複数含む場合、この関数がどれを削除するかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの存在は通常、送信側に問題があることを示す。
value(QLatin1StringView),operator[](QLatin1StringView),find(QLatin1StringView),contains(QLatin1StringView),remove(qint64),remove(const QString &),remove(const QCborValue &)も参照 。
void QCborMap::remove(const QString &key)
これはオーバーロードされた関数です。
マップからキーkey と対応する値が見つかれば、それを削除します。マップにそのようなキーがない場合、この関数は何もしません。
マップがkey に等しいキーを複数含む場合、この関数がどれを削除するかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
remove(qint64), remove(QLatin1StringView), remove(constQCborValue &).
value(const QString &),operator[](const QString &),find(const QString &),contains(const QString &)も参照 。
[noexcept]
qsizetype QCborMap::size() const
このマップの要素数を返します。
isEmpty()も参照 。
[noexcept]
void QCborMap::swap(QCborMap &other)
このマップとother の内容を入れ替えます。
QCborValue QCborMap::take(QLatin1StringView key)
マップからキーkey と対応する値を削除し、値が見つかればその値を返します。マップにそのようなキーがない場合、この関数は何もしません。
マップにkey と等しいキーが複数含まれる場合、この関数がどれを削除するかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの存在は通常、送信側に問題があることを示す。
value(QLatin1StringView),operator[](QLatin1StringView),find(QLatin1StringView),contains(QLatin1StringView),take(qint64),take(const QString &),take(const QCborValue &),insert()も参照 。
QCborValue QCborMap::take(const QCborValue &key)
マップからキーkey と対応する値を削除し、値が見つかればその値を返します。マップにそのようなキーがない場合、この関数は何もしない。
マップにkey と等しいキーが複数含まれている場合、この関数がどれを削除するかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題が あることを示す。
value(const QCborValue &),operator[](const QCborValue &),find(const QCborValue &),contains(const QCborValue &),take(QLatin1StringView),take(const QString &),take(qint64),insert()も参照 。
QCborValue QCborMap::take(const QString &key)
マップからキーkey と対応する値を削除し、見つかった場合はその値を返します。マップにそのようなキーがない場合、この関数は何もしません。
マップにkey と等しいキーが複数含まれている場合、この関数がどれを削除するかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
value(const QString &),operator[](const QString &),find(const QString &),contains(const QString &),take(QLatin1StringView),take(qint64),take(const QCborValue &),insert()も参照 。
QCborValue QCborMap::take(qint64 key)
マップからキーkey と対応する値を削除し、値が見つかればその値を返します。マップにそのようなキーがない場合、この関数は何もしない。
マップにkey と等しいキーが複数含まれている場合、この関数がどれを削除するかは未定義である。QCborMap は重複キーの挿入を許さないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
value(qint64),operator[](qint64),find(qint64),contains(qint64),take(QLatin1StringView),take(const QString &),take(const QCborValue &),insert()も参照のこと 。
QCborValue QCborMap::toCborValue() const
このマップを表すQCborValue オブジェクトを明示的に構築する。QCborValue にはQCborMap 用のコンストラクタがあるため、この変換は暗黙的に行われるため、通常この関数は必要ありません。
QCborMap をQCborValue に変換すると、QCborMap のキーやマップされた型、QCborValue::toCbor() など、QCborValues を使用できるすべてのコンテキストで使用できるようになります。
QCborValue::QCborValue(const QCborMap &)も参照してください 。
QJsonObject QCborMap::toJsonObject() const
QCborValue::toJsonValue() を使用して、このマップ内のすべてのQCborValue 値を JSON に再帰的に変換し、文字列でないすべてのキーに対して文字列キーを作成し、それらの関連から構成される対応するQJsonObject を返します。
CBORはJSONよりも豊富で幅広い型セットを含んでいるため、この変換で失われる情報もあることに注意してください。どのような変換が適用されるかの詳細については、QCborValue::toJsonValue ()を参照してください。
マップキーの文字列への変換
JSONオブジェクトは、CBORとは異なり、文字列キーを持つものとして定義されています。したがって、QCborMap からQJsonObject への変換は、キー値の "文字列化 "のステップを意味します。変換は、上記のタグと拡張型の特別な処理を使用し、残りの型も以下のように変換します:
型 | 変換 |
---|---|
ブール | "真 "と "偽" |
Null | "null" |
未定義 | "未定義" |
整数 | 数値の10進文字列形式 |
Double | 数値の10進文字列形式 |
バイト配列 | 別のタグが付けられていない限り(上記を参照)、Base64urlとしてエンコードされる |
配列 | コンパクトなDiagnostic notation |
マップ | のコンパクトな形式に置き換えられました。Diagnostic notation |
タグと拡張型 | タグ番号は削除され、タグ値は文字列に変換される。 |
fromJsonObject(),QCborValue::toJsonValue(),QCborArray::toJsonArray(),toVariantMap()も参照のこと 。
QVariantHash QCborMap::toVariantHash() const
QCborValue::toVariant() を使用して CBOR 値をQVariant に変換し、このマップ内のすべての CBOR キーを "文字列化" して、その関連付けリストの結果であるQVariantHash を返します。
QVariantMapはCBORと違って文字列キーを持つので、QCborMap からQVariantMap への変換は、キー値の "文字列化 "のステップを意味する。詳しくはQCborMap::toJsonObject()を参照してください。
さらに、QVariant への変換は完全にはロスレスではない。詳しくはQCborValue::toVariant() のドキュメントを参照。
fromVariantHash()、toVariantMap()、toJsonObject()、QCborValue::toVariant()、QCborArray::toVariantList()も参照 。
QVariantMap QCborMap::toVariantMap() const
QCborValue::toVariant() を使用して CBOR 値をQVariant に変換し、このマップ内のすべての CBOR キーを "文字列化" して、その関連付けリストの結果であるQVariantMap を返します。
QVariantMapはCBORと違って文字列キーを持つので、QCborMap からQVariantMap への変換は、キー値の "文字列化 "のステップを意味する。詳しくはQCborMap::toJsonObject()を参照してください。
さらに、QVariant への変換は完全にはロスレスではない。詳しくはQCborValue::toVariant() のドキュメントを参照。
fromVariantMap()、toVariantHash()、toJsonObject()、QCborValue::toVariant()、QCborArray::toVariantList()も参照 。
QCborValue QCborMap::value(const QCborValue &key) const
このマップ内にキーkey に対応するQCborValue 要素があればそれを返します。
マップにキーkey がない場合、この関数は未定義の値を含むQCborValue を返す。そのため、この関数では、キーが存在しない状況と、キーが未定義の値にマップされた状況を区別することはできません。
マップにkey と等しいキーが複数含まれる場合、この関数がどちらを返すかは未定である。QCborMap は重複キーの挿入を許可しないが、重複キーを含むCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
value(qint64), value(QLatin1StringView), value(constQString &)
operator[](const QCborValue &),find(const QCborValue &),constFind(const QCborValue &),remove(const QCborValue &),contains(const QCborValue &)も参照 。
QCborValue QCborMap::value(qint64 key) const
このマップにキーkey に対応するQCborValue 要素があれば、それを返します。CBORでは、整数キーを使用することを推奨している。整数キーの方が占有スペースが小さく、エンコードやデコードが簡単だからだ。
マップにキーkey がない場合、この関数は未定義の値を含むQCborValue を返す。そのため、この関数では、キーが存在しない場合と、キーが未定義の値にマップされた場合とを区別することはできない。
マップにkey に等しいキーが複数含まれる場合、関数からの戻り値がどれを参照するかは未定義である。QCborMap は重複キーの挿入を許可しないが、重複キーを含むCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーを持つことは通常、送信側に問題があることを示す。
value(QLatin1StringView), value(constQString &), value(constQCborValue &)
operator[](qint64)、find(qint64)、constFind(qint64)、remove(qint64)、contains(qint64)も参照 。
QCborValue QCborMap::value(QLatin1StringView key) const
これはオーバーロードされた関数です。
このマップにキーkey に対応するQCborValue 要素があればそれを返す。
マップにキーkey がない場合、この関数は未定義の値を含むQCborValue を返す。そのため、この関数では、キーが存在しない状況と、キーが未定義の値にマップされた状況を区別することはできません。
マップにkey と等しいキーが複数含まれる場合、この関数がどちらを返すかは未定である。QCborMap は重複キーの挿入を許可しないが、重複キーを含むCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの挿入は通常、送信側に 問題があることを示す。
value(qint64), value(constQString &), value(constQCborValue &)
operator[](QLatin1StringView),find(QLatin1StringView),constFind(QLatin1StringView),remove(QLatin1StringView),contains(QLatin1StringView)も参照 。
QCborValue QCborMap::value(const QString &key) const
これはオーバーロードされた関数です。
このマップ内にキーkey に対応するQCborValue 要素があれば、それを返します。
マップにキーkey がない場合、この関数は未定義の値を含むQCborValue を返します。そのため、この関数では、キーが存在しない状況と、キーが未定義の値にマップされた状況を区別することはできません。
マップにkey と等しいキーが複数含まれる場合、この関数がどちらを返すかは未定である。QCborMap は重複キーの挿入を許可しないが、重複キーを含むCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
value(qint64), value(QLatin1StringView), value(constQCborValue &)
operator[](const QString &),find(const QString &),constFind(const QString &),remove(const QString &),contains(const QString &)も参照 。
[noexcept]
QCborMap &QCborMap::operator=(const QCborMap &other)
このオブジェクトの内容をother のコピーで置き換え、このオブジェクトへの参照を返します。
QCborValueRef QCborMap::operator[](qint64 key)
このマップ内のキーkey に対応する値への QCborValueRef を返します。CBORでは、より少ないスペースでエンコードとデコードが簡単に行える整数キーの使用を推奨しています。
QCborValueRef の API はQCborValue とまったく同じですが、1 つ重要な違いがあります。
QCborValue マップにkey と等しいキーがなかった場合、キーが挿入され、この関数は新しい値への参照を返します。そのため、この関数では、キーが存在しなかった場合と、キーが未定義の値にマップされた場合とを区別することはできない。
マップがkey に等しい複数のキーを含む場合、戻り値がどれを参照するかは未定義である。QCborMap は重複キーの挿入を許可しないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーを持つことは通常、 送信側に問題があることを示す。
value(qint64)、find(qint64)、contains(qint64)、remove(qint64)、operator[](QLatin1StringView)、operator[](const QString &)、operator[](const QCborValue &)も参照 。
const QCborValue QCborMap::operator[](const QCborValue &key) const
このマップ内にキーkey に対応するQCborValue 要素があれば、それを返します。
マップにキーkey がない場合、この関数は未定義の値を含むQCborValue を返します。そのため、この関数では、キーが存在しない状況と、キーが未定義の値にマップされた状況を区別することはできません。
マップにkey と等しいキーが複数含まれる場合、この関数がどちらを返すかは未定である。QCborMap は重複キーの挿入を許可しないが、重複キーを含むCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
operator[](qint64), operator[](QLatin1StringView), operator[](const QCborOperator[] &)
value(const QCborValue &),find(const QCborValue &),constFind(const QCborValue &),remove(const QCborValue &),contains(const QCborValue &)も参照してください 。
const QCborValue QCborMap::operator[](qint64 key) const
このマップにキーkey に対応するQCborValue 要素があれば、それを返します。CBORでは、整数キーを使用することを推奨している。なぜなら、整数キーの方が占有するスペースが少なく、エンコードやデコードが簡単だからである。
マップにキーkey がない場合、この関数は未定義の値を含むQCborValue を返す。そのため、この関数では、キーが存在しない状況と、キーが未定義の値にマップされた状況とを区別することはできない。
マップにkey と等しいキーが複数含まれる場合、この関数がどちらを返すかは未定である。QCborMap は重複キーの挿入を許可しないが、重複キーを含むCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの挿入は通常、送信側に 問題があることを示す。
operator[](QLatin1StringView), operator[](constQString &), operator[](const QCborOperator[] &)
value(qint64)、find(qint64)、constFind(qint64)、remove(qint64)、contains(qint64)も参照 。
QCborValueRef QCborMap::operator[](QLatin1StringView key)
これはオーバーロードされた関数です。
このマップ内のキーkey に対応する値の QCborValueRef を返します。
QCborValueRef の API はQCborValue とまったく同じですが、重要な違いが 1 つあります。
QCborValue マップにkey と等しいキーがなかった場合、キーが挿入され、この関数は新しい値への参照を返します。そのため、この関数では、キーが存在しなかった場合と、キーが未定義の値にマップされた場合とを区別することはできない。
マップがkey に等しい複数のキーを含む場合、戻り値がどれを参照するかは未定義である。QCborMap は重複キーの挿入を許可しないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーの挿入は通常、 送信側に問題があることを示す。
value(QLatin1StringView),find(QLatin1StringView),contains(QLatin1StringView),remove(QLatin1StringView),operator[](qint64),operator[](const QString &),operator[](const QCborValue &)も参照 。
QCborValueRef QCborMap::operator[](const QCborValue &key)
これはオーバーロードされた関数です。
このマップ内のキーkey に対応する値の QCborValueRef を返します。
QCborValueRef の API はQCborValue とまったく同じですが、1 つだけ重要な違いがあります。
QCborValue マップにkey と等しいキーがなかった場合、キーが挿入され、この関数は新しい値への参照を返します。そのため、この関数では、キーが存在しなかった場合と、キーが未定義の値にマップされた場合とを区別することはできない。
マップがkey に等しい複数のキーを含む場合、戻り値がどれを参照するかは未定義である。QCborMap は重複キーの挿入を許可しないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの挿入は通常、送信側に問題が あることを示す。
value(const QCborValue &),find(const QCborValue &),contains(const QCborValue &),remove(const QCborValue &),operator[](qint64),operator[](QLatin1StringView),operator[](const QString &)も参照 。
QCborValueRef QCborMap::operator[](const QString &key)
これはオーバーロードされた関数です。
このマップ内のキーkey に対応する値の QCborValueRef を返します。
QCborValueRef の API はQCborValue とまったく同じですが、重要な違いが 1 つあります。
QCborValue マップにkey と等しいキーがなかった場合、キーが挿入され、この関数は新しい値への参照を返します。そのため、この関数では、キーが存在しなかった場合と、キーが未定義の値にマップされた場合とを区別することはできない。
マップがkey に等しい複数のキーを含む場合、戻り値がどれを参照するかは未定義である。QCborMap は重複キーの挿入を許可しないが、重複キーを持つCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されておらず、重複キーを持つことは通常、送信側に問題があることを示す。
value(const QString &),find(const QString &),contains(const QString &),remove(const QString &),operator[](qint64),operator[](QLatin1StringView),operator[](const QCborValue &)も参照のこと 。
const QCborValue QCborMap::operator[](QLatin1StringView key) const
これはオーバーロードされた関数です。
このマップ内にキーkey に対応するQCborValue 要素があればそれを返します。
マップにキーkey がない場合、この関数は未定義の値を含むQCborValue を返します。そのため、この関数では、キーが存在しない状況と、キーが未定義の値にマップされた状況を区別することはできません。
マップにkey と等しいキーが複数含まれる場合、この関数がどちらを返すかは未定である。QCborMap は重複キーの挿入を許可しないが、重複キーを含むCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
operator[](qint64), operator[](constQString &), operator[](const QCborOperator[] &)
value(QLatin1StringView),find(QLatin1StringView),constFind(QLatin1StringView),remove(QLatin1StringView),contains(QLatin1StringView)も参照 。
const QCborValue QCborMap::operator[](const QString &key) const
これはオーバーロードされた関数です。
このマップ内にキーkey に対応するQCborValue 要素があれば、それを返します。
マップにキーkey がない場合、この関数は未定義の値を含むQCborValue を返します。そのため、この関数では、キーが存在しない状況と、キーが未定義の値にマップされた状況を区別することはできません。
マップにkey と等しいキーが複数含まれる場合、この関数がどちらを返すかは未定である。QCborMap は重複キーの挿入を許可しないが、重複キーを含むCBORストリームをデコードすることで、そのようなマップを作成することは可能である。通常、重複キーの挿入は許可されず、重複キーの存在は通常、送信側に問題があることを示す。
operator[](qint64), operator[](QLatin1StringView), operator[](const QCborOperator[] &)
value(const QString &),find(const QString &),constFind(const QString &),remove(const QString &),contains(const QString &)も参照 。
関連する非会員
[noexcept]
bool operator!=(const QCborMap &lhs, const QCborMap &rhs)
lhs とrhs のマップを比較し、各要素を順番に比較して、2 つのマップに異なる要素または異なる順序の要素が含まれている場合は true を返し、そうでない場合は false を返します。
CBORマップは順序付けされないので、全く同じペアを含むが順序が異なる2つのマップは、やはり異なる比較をすることに注意してください。これを避けるために、例えばキーの値の昇順など、予測可能な順序でマップに要素を挿入することが推奨される。実際、キーがソートされた順序のマップは、CBOR表現に必要です。
QtのCBOR等式に関する詳細は、QCborValue::compare()を参照してください。
compare(),QCborValue::operator==(),QCborMap::operator==(),operator==(),operator<()も参照して ください。
[noexcept]
bool operator<(const QCborMap &lhs, const QCborMap &rhs)
lhs とrhs のマップを比較し、各要素を順番に比較し、lhs マップがrhs よりも先にソートされるべきであれば true を返し、そうでなければ false を返します。
CBORマップは順序付けされないので、全く同じペアを含むが順序が異なる2つのマップは、やはり異なる比較をすることに注意。これを避けるために、例えばキーの値の昇順など、予測可能な順序でマップに要素を挿入することが推奨される。実際、キーがソートされた順序のマップはCBOR表現に必要です。
CBORのソート順の詳細については、QCborValue::compare ()を参照。
compare()、QCborValue::operator==()、QCborMap::operator==()、operator==()、operator!=()も 参照のこと。
[noexcept]
bool operator<=(const QCborMap &lhs, const QCborMap &rhs)
lhs とrhs のマップを比較し、各要素を順番に比較し、lhs マップがrhs よりも先にソートされるべきか、2つのマップが同じ要素を同じ順番で含む場合に true を返し、そうでない場合に false を返す。
CBORマップは順不同であることに注意してください。つまり、全く同じペアを含むが順序が異なる2つのマップは、やはり異なる比較をすることになります。これを避けるために、例えばキーの値の昇順など、予測可能な順序でマップに要素を挿入することが推奨される。実際、キーがソートされた順序のマップはCBOR表現に必要です。
CBORのソート順の詳細については、QCborValue::compare ()を参照。
compare()、QCborValue::operator==()、QCborMap::operator==()、operator==()、operator!=()も 参照のこと。
[noexcept]
bool operator==(const QCborMap &lhs, const QCborMap &rhs)
lhs とrhs のマップを比較し、各要素を順番に比較し、2つのマップが同じ要素を同じ順序で含んでいれば真を、そうでなければ偽を返します。
CBORマップは順序付けされていないので、全く同じペアを含むが順序が異なる2つのマップは、やはり異なる比較をすることに注意してください。これを避けるために、例えばキーの値の昇順など、予測可能な順序でマップに要素を挿入することが推奨される。実際、キーがソートされた順序のマップは、CBOR表現に必要です。
QtのCBOR等式に関する詳細は、QCborValue::compare()を参照してください。
compare(),QCborValue::operator==(), QCborMap::operator==(),operator!=(),operator<()も参照して ください。
[noexcept]
bool operator>(const QCborMap &lhs, const QCborMap &rhs)
lhs とrhs のマップを比較し、各要素を順番に比較し、lhs マップがrhs の後にソートされるべきであれば true を返し、そうでなければ false を返します。
CBORマップは順序付けされていないことに注意。つまり、全く同じペアを含むが順序が異なる2つのマップは、やはり異なる比較をすることになる。これを避けるために、例えばキーの値の昇順など、予測可能な順序でマップに要素を挿入することが推奨される。実際、キーがソートされた順序のマップはCBOR表現に必要です。
CBORのソート順の詳細については、QCborValue::compare ()を参照。
compare()、QCborValue::operator==()、QCborMap::operator==()、operator==()、operator!=()も 参照のこと。
[noexcept]
bool operator>=(const QCborMap &lhs, const QCborMap &rhs)
lhs とrhs のマップを比較し、各要素を順番に比較し、lhs マップがrhs の後にソートされるべきか、2つのマップが同じ要素を同じ順番で含む場合に true を返し、そうでない場合に false を返す。
CBORマップは順不同であることに注意してください。つまり、全く同じペアを含むが順序が異なる2つのマップは、やはり異なる比較をすることになります。これを避けるために、例えばキーの値の昇順など、予測可能な順序でマップに要素を挿入することが推奨される。実際、キーがソートされた順序のマップはCBOR表現に必要です。
CBORのソート順の詳細については、QCborValue::compare ()を参照。
compare(),QCborValue::operator==(),QCborMap::operator==(),operator==(),operator!=()も参照して ください。
©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。