QCborMap Class
QCborMapクラスは、CBORで表現可能な連想コンテナを保持するために使用される。詳細...
ヘッダー | #include <QCborMap> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
- 継承メンバを含む全メンバのリスト
- QCborMapはQtのCBOR Supportの一部です。
このクラスは強く比較可能です。
このクラスは、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::iterator
QCborMap::Iterator の対義語。
QCborMap::key_type
このマップのキー・タイプ。QCborMap キーはどの CBOR タイプでもよいので、これはQCborValue です。
QCborMap::mapped_type
値)にマッピングされる型、つまりQCborValue 。
QCborMap::size_type
QCborMap がサイズに使用するタイプ。
QCborMap::value_type
このコンテナに格納される値:QCborValues のペア
メンバー関数ドキュメント
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 で識別されるキーと値のペアを含んでいれば真を返す。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 で識別されるキーと値のペアを含む場合に真を返す。
value(const QString &),operator[](const QString &),find(const QString &),remove(const QString &),contains(qint64),remove(QLatin1StringView), およびremove(const QCborValue &)も参照してください 。
bool QCborMap::empty() const
isEmpty() の同義語。この関数は、Standard Library API を使用する汎用コードとの互換性のために提供されています。
このマップが空であれば真を返す (size() == 0)。
QCborMap::iterator QCborMap::end()
マップの最後の要素の直前の要素を表すマップ・イテレータを返します。
begin()、constBegin()、find() およびconstFind()も参照 ください。
QCborMap::const_iterator QCborMap::end() const
マップの最後の要素の直前の要素を表すマップ・イテレータを返します。
begin()、constBegin()、find() およびconstFind()も参照 ください。
QCborMap::iterator QCborMap::erase(QCborMap::const_iterator it)
map iteratorit が指すキーと値のペアを削除し、削除後の次の要素へのポインタを返します。
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
CBORの値をQCborValue::toVariant()を使ってQVariant に変換し、このマップのすべてのCBORキーを「文字列化」して、その連想リストの結果であるQVariantHash を返す。
QVariantMapはCBORと違って文字列キーを持つので、QCborMap からQVariantMap への変換は、キー値の "文字列化 "のステップを意味する。詳しくはQCborMap::toJsonObject()を参照してください。
さらに、QVariant への変換は完全にはロスレスではない。詳しくはQCborValue::toVariant() のドキュメントを参照。
fromVariantHash()、toVariantMap()、toJsonObject()、QCborValue::toVariant()、QCborArray::toVariantList()も参照 。
QVariantMap QCborMap::toVariantMap() const
CBORの値をQCborValue::toVariant() を使って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つのマップが同じ要素を同じ順番で含んでいれば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!=()も参照の こと。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.