Sur cette page

QCborArray Class

La classe QCborArray est utilisée pour contenir un tableau d'éléments CBOR. Plus d'informations...

En-tête : #include <QCborArray>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake : QT += core

Cette classe est fortement comparable.

Cette classe est fortement comparable à QCborValueConstRef.

Note : Toutes les fonctions de cette classe sont réentrantes.

Types publics

Fonctions publiques

QCborArray()
QCborArray(std::initializer_list<QCborValue> args)
QCborArray(const QCborArray &other)
(since 6.10) QCborArray(QCborArray &&other)
~QCborArray()
void append(QCborValue &&value)
void append(const QCborValue &value)
QCborValue at(qsizetype i) const
QCborArray::iterator begin()
QCborArray::const_iterator begin() const
QCborArray::const_iterator cbegin() const
QCborArray::const_iterator cend() const
void clear()
int compare(const QCborArray &other) const
QCborArray::const_iterator constBegin() const
QCborArray::const_iterator constEnd() const
bool contains(const QCborValue &value) const
bool empty() const
QCborArray::iterator end()
QCborArray::const_iterator end() const
QCborArray::iterator erase(QCborArray::const_iterator it)
QCborArray::iterator erase(QCborArray::iterator it)
QCborValue extract(QCborArray::ConstIterator it)
QCborValue extract(QCborArray::Iterator it)
QCborValueRef first()
QCborValue first() const
void insert(qsizetype i, QCborValue &&value)
void insert(qsizetype i, const QCborValue &value)
QCborArray::iterator insert(QCborArray::const_iterator before, const QCborValue &value)
QCborArray::iterator insert(QCborArray::iterator before, const QCborValue &value)
bool isEmpty() const
QCborValueRef last()
QCborValue last() const
void pop_back()
void pop_front()
void prepend(QCborValue &&value)
void prepend(const QCborValue &value)
void push_back(const QCborValue &t)
void push_front(const QCborValue &t)
void removeAt(qsizetype i)
void removeFirst()
void removeLast()
qsizetype size() const
void swap(QCborArray &other)
QCborValue takeAt(qsizetype i)
QCborValue takeFirst()
QCborValue takeLast()
QCborValue toCborValue() const
QJsonArray toJsonArray() const
QVariantList toVariantList() const
QCborArray operator+(const QCborValue &v) const
QCborArray &operator+=(const QCborValue &v)
QCborArray &operator<<(const QCborValue &v)
(since 6.10) QCborArray &operator=(QCborArray &&other)
QCborArray &operator=(const QCborArray &other)
QCborValueRef operator[](qsizetype i)
const QCborValue operator[](qsizetype i) const

Membres publics statiques

QCborArray fromJsonArray(const QJsonArray &array)
(since 6.3) QCborArray fromJsonArray(QJsonArray &&array)
QCborArray fromStringList(const QStringList &list)
QCborArray fromVariantList(const QVariantList &list)
bool operator!=(const QCborArray &lhs, const QCborArray &rhs)
bool operator<(const QCborArray &lhs, const QCborArray &rhs)
bool operator<=(const QCborArray &lhs, const QCborArray &rhs)
bool operator==(const QCborArray &lhs, const QCborArray &rhs)
bool operator>(const QCborArray &lhs, const QCborArray &rhs)
bool operator>=(const QCborArray &lhs, const QCborArray &rhs)

Description détaillée

Cette classe peut être utilisée pour contenir un conteneur séquentiel en CBOR (un tableau). CBOR est la Concise Binary Object Representation, une forme très compacte d'encodage de données binaires qui est un surensemble de JSON. Il a été créé par le groupe de travail Constrained RESTful Environments (CoRE) de l'IETF, qui l'a utilisé dans de nombreuses nouvelles RFC. Il est destiné à être utilisé parallèlement au protocole CoAP.

QCborArray est très similaire à QVariantList et QJsonArray et son API est presque identique à ces deux classes. Il peut également être converti vers et depuis ces deux classes, bien qu'il puisse y avoir une perte d'information dans certaines conversions.

Voir aussi QCborValue, QCborMap, QJsonArray, QList, Parsing and displaying CBOR data, Serialization Converter, and Saving and Loading a Game.

Documentation sur les types de membres

QCborArray::const_iterator

Synonyme de QCborArray::ConstIterator.

QCborArray::const_pointer

Un typedef pour const QCborValue *, pour la compatibilité avec les algorithmes génériques.

QCborArray::const_reference

Un typedef pour const QCborValue &, pour la compatibilité avec les algorithmes génériques.

QCborArray::difference_type

Un typedef pour qsizetype.

QCborArray::iterator

Synonyme de QCborArray::Iterator.

QCborArray::pointer

Un typedef pour QCborValue *, pour la compatibilité avec les algorithmes génériques.

QCborArray::reference

Un typedef pour QCborValue &, pour la compatibilité avec les algorithmes génériques.

QCborArray::size_type

Un typedef pour qsizetype.

QCborArray::value_type

Le type de valeurs qui peuvent être contenues dans un QCborArray: c'est-à-dire QCborValue.

Documentation sur les fonctions membres

[noexcept] QCborArray::QCborArray()

Construit un tableau QCbor vide.

QCborArray::QCborArray(std::initializer_list<QCborValue> args)

Initialise ce QCborArray à partir de la liste C++ entre accolades trouvée dans args, comme dans l'exemple suivant :

QCborArray a = { null, 0, 1, 1.5, 2, "Hello", QByteArray("World") };

[noexcept] QCborArray::QCborArray(const QCborArray &other)

Copie le contenu de other dans cet objet.

[constexpr noexcept, since 6.10] QCborArray::QCborArray(QCborArray &&other)

Constructeur de déplacement.

L'objet déplacé other est placé dans l'état de construction par défaut.

Cette fonction a été introduite dans Qt 6.10.

Voir aussi QCborArray::QCborArray().

[noexcept] QCborArray::~QCborArray()

Détruit ce site QCborArray et libère les ressources associées.

void QCborArray::append(const QCborValue &value)

void QCborArray::append(QCborValue &&value)

Ajoute value au tableau après tous les autres éléments qu'il peut déjà contenir.

Voir aussi at(), operator[](), first(), last(), insert(), prepend(), removeAt(), et takeAt().

QCborValue QCborArray::at(qsizetype i) const

Renvoie l'élément QCborValue à la position i dans le tableau.

Si le tableau est plus petit que i éléments, cette fonction renvoie un QCborValue contenant une valeur indéfinie. C'est pourquoi cette fonction ne permet pas de distinguer le cas où le tableau n'est pas assez grand de celui où le tableau commence par une valeur indéfinie.

Voir aussi operator[](), first(), last(), insert(), prepend(), append(), removeAt() et takeAt().

QCborArray::iterator QCborArray::begin()

Renvoie un itérateur de tableau pointant sur le premier élément de ce tableau. Si le tableau est vide, cette fonction renvoie la même chose que end().

Voir aussi constBegin() et end().

QCborArray::const_iterator QCborArray::begin() const

Renvoie un itérateur de tableau pointant sur le premier élément de ce tableau. Si le tableau est vide, cette fonction renvoie la même chose que end().

Voir aussi constBegin() et constEnd().

QCborArray::const_iterator QCborArray::cbegin() const

Renvoie un itérateur de tableau pointant sur le premier élément de ce tableau. Si le tableau est vide, cette fonction renvoie la même chose que end().

Voir aussi constBegin() et constEnd().

QCborArray::const_iterator QCborArray::cend() const

Renvoie un itérateur de tableau pointant juste après le dernier élément de ce tableau.

Voir aussi constBegin() et constEnd().

void QCborArray::clear()

Vide ce tableau.

Voir aussi isEmpty().

[noexcept] int QCborArray::compare(const QCborArray &other) const

Compare ce tableau et other, en comparant chaque élément dans l'ordre, et renvoie un entier qui indique si ce tableau doit être trié avant (si le résultat est négatif) ou après other (si le résultat est positif). Si cette fonction renvoie 0, les deux tableaux sont égaux et contiennent les mêmes éléments.

Pour plus d'informations sur l'ordre de tri CBOR, voir QCborValue::compare().

Voir également QCborValue::compare(), QCborMap::compare() et operator==().

QCborArray::const_iterator QCborArray::constBegin() const

Renvoie un itérateur de tableau pointant sur le premier élément de ce tableau. Si le tableau est vide, cette fonction renvoie la même chose que end().

Voir aussi begin() et constEnd().

QCborArray::const_iterator QCborArray::constEnd() const

Renvoie un itérateur de tableau pointant juste après le dernier élément de ce tableau.

Voir aussi constBegin() et end().

bool QCborArray::contains(const QCborValue &value) const

Retourne vrai si ce tableau contient un élément égal à value.

bool QCborArray::empty() const

Synonyme de isEmpty(). Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Renvoie un message vrai si ce tableau est vide (size() == 0).

Voir également isEmpty() et size().

QCborArray::iterator QCborArray::end()

Renvoie un itérateur de tableau pointant juste après le dernier élément de ce tableau.

Voir aussi begin() et constEnd().

QCborArray::const_iterator QCborArray::end() const

Renvoie un itérateur de tableau pointant juste après le dernier élément de ce tableau.

Voir aussi constBegin() et constEnd().

Supprime de ce tableau l'élément pointé par l'itérateur de tableau it, puis renvoie un itérateur vers l'élément suivant (celui qui a pris la même position dans le tableau que celle qu'occupait it ).

Voir aussi insert(), removeAt(), takeAt(), takeFirst(), et takeLast().

QCborValue QCborArray::extract(QCborArray::Iterator it)

QCborValue QCborArray::extract(QCborArray::ConstIterator it)

Extrait une valeur du tableau à la position indiquée par l'itérateur it et renvoie la valeur ainsi extraite.

Voir aussi insert(), erase(), takeAt() et removeAt().

QCborValueRef QCborArray::first()

Renvoie une référence au premier QCborValue de ce tableau. Le tableau ne doit pas être vide.

QCborValueRef a exactement la même API que QCborValue, avec une différence importante : si vous lui attribuez de nouvelles valeurs, ce tableau sera mis à jour avec cette nouvelle valeur.

Voir aussi operator[](), at(), last(), insert(), prepend(), append(), removeAt() et takeAt().

QCborValue QCborArray::first() const

Renvoie le premier QCborValue de ce tableau.

Si le tableau est vide, cette fonction renvoie un QCborValue contenant une valeur indéfinie. C'est pourquoi cette fonction ne permet pas de distinguer le cas où le tableau n'est pas assez grand de celui où le tableau se termine par une valeur indéfinie.

Voir aussi operator[](), at(), last(), insert(), prepend(), append(), removeAt() et takeAt().

[static] QCborArray QCborArray::fromJsonArray(const QJsonArray &array)

Convertit tous les éléments JSON trouvés dans le tableau array en CBOR en utilisant QCborValue::fromJson(), et renvoie le tableau CBOR composé de ces éléments.

Cette conversion est sans perte, car le système de types CBOR est un surensemble de celui de JSON. De plus, le tableau retourné par cette fonction peut être reconverti au format original array en utilisant toJsonArray().

Voir aussi toJsonArray(), toVariantList(), QCborValue::fromJsonValue(), et QCborMap::fromJsonObject().

[static noexcept, since 6.3] QCborArray QCborArray::fromJsonArray(QJsonArray &&array)

Il s'agit d'une fonction surchargée.

Cette fonction a été introduite dans Qt 6.3.

[static] QCborArray QCborArray::fromStringList(const QStringList &list)

Renvoie un QCborArray contenant toutes les chaînes de caractères trouvées dans la liste list.

Voir aussi fromVariantList() et fromJsonArray().

[static] QCborArray QCborArray::fromVariantList(const QVariantList &list)

Convertit tous les éléments de list en CBOR en utilisant QCborValue::fromVariant() et renvoie le tableau composé de ces éléments.

La conversion à partir de QVariant n'est pas totalement sans perte. Veuillez consulter la documentation de QCborValue::fromVariant() pour plus d'informations.

Voir aussi toVariantList(), fromStringList(), fromJsonArray(), et QCborMap::fromVariantMap().

void QCborArray::insert(qsizetype i, const QCborValue &value)

void QCborArray::insert(qsizetype i, QCborValue &&value)

Insère value dans le tableau à la position i dans ce tableau. Si i vaut -1, l'entrée est ajoutée au tableau. Remplit le tableau d'entrées non valides si i est supérieur à la taille précédente du tableau.

Voir aussi at(), operator[](), first(), last(), prepend(), append(), removeAt(), takeAt() et extract().

QCborArray::iterator QCborArray::insert(QCborArray::iterator before, const QCborValue &value)

QCborArray::iterator QCborArray::insert(QCborArray::const_iterator before, const QCborValue &value)

Insère value dans ce tableau avant l'élément before et renvoie un itérateur de tableau pointant sur l'élément qui vient d'être inséré.

Voir aussi erase(), removeAt(), prepend() et append().

bool QCborArray::isEmpty() const

Retourne vrai si ce QCborArray est vide (c'est-à-dire si size() vaut 0).

Voir aussi size() et clear().

QCborValueRef QCborArray::last()

Renvoie une référence au dernier QCborValue de ce tableau. Le tableau ne doit pas être vide.

QCborValueRef a exactement la même API que QCborValue, avec une différence importante : si vous lui attribuez de nouvelles valeurs, ce tableau sera mis à jour avec cette nouvelle valeur.

Voir aussi operator[](), at(), first(), insert(), prepend(), append(), removeAt() et takeAt().

QCborValue QCborArray::last() const

Renvoie le dernier QCborValue de ce tableau.

Si le tableau est vide, cette fonction renvoie un QCborValue contenant une valeur indéfinie. C'est pourquoi cette fonction ne permet pas de distinguer le cas où le tableau n'est pas assez grand de celui où le tableau se termine par une valeur indéfinie.

Voir aussi operator[](), at(), first(), insert(), prepend(), append(), removeAt() et takeAt().

void QCborArray::pop_back()

Synonyme de removeLast(). Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Supprime le dernier élément de ce tableau. Le tableau ne doit pas être vide avant la suppression

Voir aussi removeLast(), takeLast(), pop_front(), push_back(), append() et insert().

void QCborArray::pop_front()

Synonyme de removeFirst(). Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Supprime le premier élément de ce tableau. Le tableau ne doit pas être vide avant la suppression

Voir aussi removeFirst(), takeFirst(), pop_back(), push_front(), prepend() et insert().

void QCborArray::prepend(const QCborValue &value)

void QCborArray::prepend(QCborValue &&value)

Préfixe value dans le tableau avant tout autre élément qu'il pourrait déjà contenir.

Voir aussi at(), operator[](), first(), last(), insert(), append(), removeAt() et takeAt().

void QCborArray::push_back(const QCborValue &t)

Synonyme de append(). Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Ajoute l'élément t à ce tableau.

Voir également append(), push_front(), pop_back(), prepend() et insert().

void QCborArray::push_front(const QCborValue &t)

Synonyme de prepend(). Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Elle ajoute l'élément t à ce tableau.

Voir aussi prepend(), push_back(), pop_front(), append() et insert().

void QCborArray::removeAt(qsizetype i)

Supprime du tableau l'élément situé à la position i. Le tableau doit comporter plus de i éléments avant la suppression.

Voir aussi takeAt(), removeFirst(), removeLast(), at(), operator[](), insert(), prepend() et append().

void QCborArray::removeFirst()

Supprime le premier élément du tableau, le deuxième élément devenant le premier. Le tableau ne doit pas être vide avant cet appel.

Voir aussi removeAt(), takeFirst(), removeLast(), at(), operator[](), insert(), prepend() et append().

void QCborArray::removeLast()

Supprime le dernier élément du tableau. Le tableau ne doit pas être vide avant cet appel.

Voir aussi removeAt(), takeLast(), removeFirst(), at(), operator[](), insert(), prepend() et append().

[noexcept] qsizetype QCborArray::size() const

Renvoie la taille de ce tableau.

Voir également isEmpty().

[noexcept] void QCborArray::swap(QCborArray &other)

Remplace ce tableau par other. Cette opération est très rapide et n'échoue jamais.

QCborValue QCborArray::takeAt(qsizetype i)

Supprime du tableau l'élément situé à la position i et le renvoie. Le tableau doit comporter plus de i éléments avant la suppression.

Voir aussi removeAt(), removeFirst(), removeLast(), at(), operator[](), insert(), prepend() et append().

QCborValue QCborArray::takeFirst()

Supprime le premier élément du tableau et le renvoie, le deuxième élément devenant le premier. Le tableau ne doit pas être vide avant cet appel.

Voir aussi takeAt(), removeFirst(), removeLast(), at(), operator[](), insert(), prepend() et append().

QCborValue QCborArray::takeLast()

Supprime le dernier élément du tableau et le renvoie. Le tableau ne doit pas être vide avant cet appel.

Voir aussi takeAt(), removeLast(), removeFirst(), at(), operator[](), insert(), prepend() et append().

QCborValue QCborArray::toCborValue() const

Construit explicitement un objet QCborValue qui représente ce tableau. Cette fonction n'est généralement pas nécessaire puisque QCborValue possède un constructeur pour QCborArray, la conversion est donc implicite.

La conversion de QCborArray en QCborValue permet de l'utiliser dans tous les contextes où les QCborValues peuvent être utilisées, y compris en tant qu'éléments dans les QCborArrays et en tant que clés et types mappés dans QCborMap. La conversion d'un tableau en QCborValue permet d'accéder à QCborValue::toCbor().

Voir aussi QCborValue::QCborValue(const QCborArray &).

QJsonArray QCborArray::toJsonArray() const

Convertit récursivement chaque élément QCborValue de ce tableau en JSON à l'aide de QCborValue::toJsonValue() et renvoie le QJsonArray correspondant composé de ces éléments.

Veuillez noter que CBOR contient un ensemble de types plus riche et plus large que JSON, de sorte que certaines informations peuvent être perdues lors de cette conversion. Pour plus de détails sur les conversions appliquées, voir QCborValue::toJsonValue().

Voir également fromJsonArray(), QCborValue::toJsonValue(), QCborMap::toJsonObject() et toVariantList().

QVariantList QCborArray::toVariantList() const

Convertit récursivement chaque QCborValue de ce tableau à l'aide de QCborValue::toVariant() et renvoie le QVariantList composé des éléments convertis.

La conversion en QVariant n'est pas totalement sans perte. Veuillez consulter la documentation de QCborValue::toVariant() pour plus d'informations.

Voir aussi fromVariantList(), fromStringList(), toJsonArray(), QCborValue::toVariant() et QCborMap::toVariantMap().

QCborArray QCborArray::operator+(const QCborValue &v) const

Renvoie un nouveau tableau QCborArray contenant les mêmes éléments que ce tableau, plus v ajouté comme dernier élément.

Voir aussi operator+=(), operator<<(), et append().

QCborArray &QCborArray::operator+=(const QCborValue &v)

Ajoute v à ce tableau et renvoie une référence à ce tableau.

Voir aussi append(), insert(), operator+() et operator<<().

QCborArray &QCborArray::operator<<(const QCborValue &v)

Ajoute v à ce tableau et renvoie une référence à ce tableau.

Voir aussi append(), insert(), operator+() et operator+=().

[noexcept, since 6.10] QCborArray &QCborArray::operator=(QCborArray &&other)

Opérateur d'affectation de déplacement.

L'objet déplacé other est placé dans un état valide, mais non spécifié.

Cette fonction a été introduite dans Qt 6.10.

[noexcept] QCborArray &QCborArray::operator=(const QCborArray &other)

Remplace le contenu de ce tableau par celui de other, puis renvoie une référence à cet objet.

QCborValueRef QCborArray::operator[](qsizetype i)

Renvoie une référence à l'élément QCborValue à la position i dans le tableau. Les indices au-delà de la fin du tableau feront croître le tableau, en le remplissant avec des entrées indéfinies, jusqu'à ce qu'il ait une entrée à l'indice spécifié.

QCborValueRef a exactement la même API que QCborValue, avec une différence importante : si vous lui attribuez de nouvelles valeurs, ce tableau sera mis à jour avec cette nouvelle valeur.

Voir aussi at(), first(), last(), insert(), prepend(), append(), removeAt() et takeAt().

const QCborValue QCborArray::operator[](qsizetype i) const

Renvoie l'élément QCborValue à la position i dans le tableau.

Si le tableau est plus petit que i éléments, cette fonction renvoie un QCborValue contenant une valeur indéfinie. C'est pourquoi cette fonction ne permet pas de distinguer le cas où le tableau n'est pas assez grand de celui où le tableau contient une valeur indéfinie à la position i.

Voir également at(), first(), last(), insert(), prepend(), append(), removeAt() et takeAt().

Non-membres apparentés

[noexcept] bool operator!=(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs, en comparant chaque élément dans l'ordre, et renvoie vrai si le contenu des deux tableaux est différent, faux sinon.

Pour plus d'informations sur l'égalité CBOR dans Qt, voir QCborValue::compare().

Voir aussi compare(), QCborValue::operator==(), QCborMap::operator==(), operator==() et operator<().

[noexcept] bool operator<(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs, en comparant chaque élément dans l'ordre, et renvoie true si le tableau lhs doit être trié avant rhs, false dans le cas contraire.

Pour plus d'informations sur l'ordre de tri CBOR, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==(), operator!=() et operator<=().

[noexcept] bool operator<=(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs, en comparant chaque élément dans l'ordre, et renvoie vrai si le tableau lhs doit être trié avant rhs, ou si les deux tableaux contiennent les mêmes éléments, faux sinon.

Pour plus d'informations sur l'ordre de tri CBOR, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==(), operator!=() et operator<().

[noexcept] bool operator==(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs, en comparant chaque élément dans l'ordre, et renvoie vrai si les deux tableaux contiennent les mêmes éléments, faux dans le cas contraire.

Pour plus d'informations sur l'égalité CBOR dans Qt, voir QCborValue::compare().

Voir aussi compare(), QCborValue::operator==(), QCborMap::operator==(), operator!=() et operator<().

[noexcept] bool operator>(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs, en comparant chaque élément dans l'ordre, et renvoie true si le tableau lhs doit être trié après rhs, false dans le cas contraire.

Pour plus d'informations sur l'ordre de tri CBOR, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==(), operator!=() et operator>=().

[noexcept] bool operator>=(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs, en comparant chaque élément dans l'ordre, et renvoie vrai si le tableau lhs doit être trié après rhs, ou si les deux tableaux contiennent les mêmes éléments, faux sinon.

Pour plus d'informations sur l'ordre de tri CBOR, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==(), operator!=() et operator>().

© 2026 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.