IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Viadeo Twitter Facebook Share on Google+   
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QVector

La classe QVector est une classe template qui fournit un tableau dynamique. Plus d'informations...

#include <QVector>

Voir la position dans l'arbre des classes.

H�ritage

H�rit� par Q3ValeurVector, QPolygon, QPolygonF, QStack et QXmlStreamAttributes.

Note : toutes les fonctions de cette classe sont r�-entrantes.

Description d�taill�e

La classe QVector est une classe template qui fournit un tableau dynamique.

QVector<T> est l'une des classes conteneurs g�n�riques de Qt. Elle garde ses objets dans des emplacements adjacents en m�moire et fournit un acc�s rapide bas� sur des index.

QList<T>, QLinkedList<T> et QVarLengthArray<T> fournissent des fonctionnalit�s similaires. Voici un aper�u.

  • Pour la majorit� des cas, QList est la bonne classe � utiliser. Les op�rations comme prepend() et insert() sont normalement plus rapides qu'avec un QVector gr�ce � la fa�on dont la QList garde les objets en m�moire (voir la complexit� algorithmique pour plus de d�tails) et ses fonctions bas�es sur les index sont plus commodes que les fonctions de la QLinkedList bas�es sur des it�rateurs. Finalement, cela r�duit aussi le code dans l'ex�cutable.
  • Si on a besoin d'une vraie liste cha�n�e, avec des insertions en milieu de liste en temps constant garanti et des it�rateurs sur les objets plut�t que des index, on utilise une QLinkedList.
  • Si on veut que les objets occupent des positions adjacentes en m�moire ou si les objets sont plus grands qu'un pointeur et que l'on veut �viter un surco�t dans leur allocation individuelle sur la pile lors de l'insertion, on utilise QVector.
  • Si on veut un tableau de taille variable bas niveau, QVarLengthArray peut �tre suffisant.

Voici un exemple de QVector qui stocke des entiers et de QVector qui stocke des QString :

 QVector<int> integerVector;
 QVector<QString> stringVector;

QVector stocke un vecteur (ou un tableau) d'objets. Typiquement, les vecteurs sont cr��s avec une taille initiale. Par exemple, le code suivant construit un QVector de 200 �l�ments :

 QVector<QString> vector(200);

Les �l�ments sont automatiquement initialis�s avec la valeur retourn�e par le constructeur par d�faut. Si on souhaite l'initialiser avec une valeur diff�rente, on passe cette valeur en deuxi�me argument du constructeur :

 QVector<QString> vector(200, "Pass");

On peut aussi appeler la fonction fill() � n'importe quel moment, pour remplir le vecteur avec une valeur.

QVector utilise des index commen�ant par 0, comme pour les tableaux en C++. Pour acc�der � un �l�ment � une position particuli�re, on peut utiliser l'op�rateur operator[](). Sur les vecteurs non constants, l'op�rateur retourne une r�f�rence sur un �l�ment qui peut �tre utilis� � gauche d'une affectation :

 if (vector[0] == "Liz")
     vector[0] = "Elizabeth";

Pour les acc�s en lecture seule, la syntaxe alternative at() est � utiliser :

 for (int i = 0; i < vector.size(); ++i) {
     if (vector.at(i) == "Alfonso")
         cout << "Found Alfonso at position " << i << endl;
 }

at() peut �tre plus rapide que operator[](), car il ne provoque jamais de copie profonde.

Une autre m�thode pour acc�der aux donn�es stock�es dans un QVector est d'appeler la fonction data(). Cette fonction retourne un pointeur sur le premier �l�ment du vecteur. On peut utiliser le pointeur pour acc�der et modifier directement les donn�es stock�es. Le pointeur est tr�s pratique si on a besoin de passer un QVector � une fonction qui accepte un tableau C++.

Si on souhaite trouver toutes les occurrences d'une valeur particuli�re dans un vecteur, on utilise indexOf() ou lastIndexOf(). La premi�re cherche vers l'avant en partant d'un index donn�, la deuxi�me cherche en arri�re. Les deux fonctions retournent l'index de l'�l�ment si trouv� ; sinon, elles retournent -1. Par exemple :

 int i = vector.indexOf("Harumi");
 if (i != -1)
     cout << "First occurrence of Harumi is at position " << i << endl;

Si on veut simplement v�rifier si le vecteur contient une valeur particuli�re, on utilise la fonction contains(). Si on veut trouver le nombre de fois que la valeur appara�t dans le vecteur, on utilise la fonction count().

QVector fournit les fonctions basiques pour ajouter, d�placer et retirer des �l�ments: insert(), replace(), remove(), prepend(), append(). � l'exception de append() et replace(), ces fonctions peuvent �tre lentes (temps lin�aire) pour de grands vecteurs, car elles n�cessitent le d�placement d'une position en m�moire de beaucoup d'�l�ments du vecteur. Si on souhaite un conteneur qui permet l'insertion/suppression rapide d'�l�ments en son milieu, on utilise QList ou QLinkedList � la place.

Contrairement aux tableaux C++, les QVectors peuvent �tre redimensionn�s � n'importe quel moment en appelant la fonction resize(). Si la nouvelle taille est plus grande que l'ancienne, QVector peut r�allouer tout le vecteur. Le QVector essaie de r�duire le nombre de r�allocations en allouant � l'avance jusqu'� deux fois la taille de la m�moire occup�e par les donn�es actuelles.

Si on conna�t par avance le nombre d'�l�ments que le QVector contiendra, on peut appeler la fonction reserve(), demandant au QVector de pr�allouer un certain espace en m�moire. On peut aussi appeler la fonction capacity() pour conna�tre la quantit� de m�moire allou�e par le QVector.

Il est � noter que l'utilisation d'op�rateurs et de fonctions non constants peut entra�ner une copie profonde des donn�es par le QVector. Cela est d� au partage implicite.

Les types des valeurs contenues dans un QVector doivent �tre des types de donn�es assignables. Cette cat�gorie regroupe pratiquement tous les types de donn�es qui sont utilis�s habituellement mais le compilateur ne laissera pas, par exemple, stocker un QWidget comme valeur; par contre, le stockage d'un QWidget * est possible. Quelques fonctions ont des exigences suppl�mentaires ; par exemple, indexOf() et lastIndexOf() s'attendent � ce que le type de donn�es supporte l‹operator==(). Ces exigences sont document�es pour chaque fonction.

Comme tout autre classe conteneur, QVector fournit des it�rateurs de style Java (QVectorIterator et QMutableVectorIterator) et des it�rateurs de style STL (QVector::const_iterator et QVector::iterator). Dans l'usage, ils sont rarement utilis�s, car on peut utiliser les index avec QVector.

En plus de QVector, Qt fournit aussi QVarLengthArray, une classe bas niveau avec quelques fonctionnalit�s optimis�es pour la vitesse.

QVector ne supporte pas l'insertion, l'ajout en d�but, l'ajout en fin ou le remplacement r�f�ren�ant ses propres valeurs. Ces actions provoqueront l?abandon du programme avec un message d'erreur.

Voir aussi QVectorIterator, QMutableVectorIterator, QList et QLinkedList.

Type

typedef QVector::ConstIterator

Synonyme dans le style Qt pour QVector::const_iterator.

typedef QVector::Iterator

Synonyme dans le style Qt pour QVector::iterator.

typedef QVector::const_iterator

Le typedef QVector::const_iterator fournit un it�rateur constant de style STL pour QVector et QStack.

QVector fournit les it�rateurs de style STL ainsi que les it�rateurs de style Java. L'it�rateur constant de style STL est simplement un typedef pour « const T * » (pointeur sur un T constant).

Voir aussi QVector::constBegin(), QVector::constEnd(), QVector::iterator et QVectorIterator.

typedef QVector::const_pointer

Typedef pour const T *. Fourni pour la compatibilit� STL.

typedef QVector::const_reference

Typedef pour T &. Fourni pour la compatibilit� STL.

typedef QVector::difference_type

Typedef pour ptrdiff_t. Fourni pour la compatibilit� STL.

typedef QVector::iterator

Le typedef QVector::iterator fournit un it�rateur non constant de style STL pour QVector et QStack.

QVector fournit les it�rateurs de style STL ainsi que les it�rateurs de style Java. L'it�rateur non constant de style STL est simplement un typedef pour « T * » (pointeur sur T).

Voir aussi QVector::begin(), QVector::end(), QVector::const_iterator et QMutableVectorIterator.

typedef QVector::pointer

Typedef pour T *. Fourni pour la compatibilit� STL.

typedef QVector::reference

Typedef pour T &. Fourni pour la compatibilit� STL.

typedef QVector::size_type

Typedef pour int. Fourni pour la compatibilit� STL.

typedef QVector::value_type

Typedef pour T. Fourni pour la compatibilit� STL.

Fonctions membres

QVector::QVector ()

Construit un vecteur vide.

Voir aussi resize().

QVector::QVector ( int size )

Construit un vecteur avec une taille size initiale.

Les �l�ments sont initialis�s avec la valeur retourn�e par le constructeur par d�faut.

Voir aussi resize().

QVector::QVector ( int size, const T & value )

Construit un vecteur avec une taille size initiale. Chaque �l�ment est initialis� avec la valeur value.

Voir aussi resize() et fill().

QVector::QVector ( const QVector<T> & other )

Construit une copie du vecteur other.

Cette op�ration est en temps constant, car QVector est partag� implicitement. Cela permet le renvoi d'un QVector par cette fonction tr�s rapidement. Si l'instance partag�e est modifi�e, elle va �tre copi�e (copie � l'�criture) en temps lin�aire.

Voir aussi operator=().

QVector::~QVector ()

D�truit le vecteur.

void QVector::append ( const T & value )

Ins�re la valeur value � la fin du vecteur.

Exemple :

 QVector<QString> vector(0);
 vector.append("one");
 vector.append("two");
 vector.append("three");
 // vector: ["one", "two", "three"]

Cela est identique que d'appeler resize(size() + 1) et d'assigner la valeur value au nouveau dernier �l�ment du vecteur.

Cette op�ration est relativement rapide, car QVector alloue plus de m�moire que n�cessaire, donc il peut grandir sans r�allouer le vecteur en entier � chaque fois.

Voir aussi operator<<(), prepend() et insert().

const T & QVector::at ( int i ) const

Retourne l'�l�ment � la position i dans le vecteur.

i doit �tre un index valide pour le vecteur (c'est-�-dire, 0 <= i < size()).

Voir aussi value() et operator[]().

reference QVector::back ()

Cette fonction est fournie pour la compatibilit� STL. Elle est �quivalent � last().

const_reference QVector::back () const

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

iterator QVector::begin ()

Retourne un it�rateur de style STL pointant sur le premier �l�ment du vecteur.

Voir aussi constBegin() et end().

const_iterator QVector::begin () const

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

int QVector::capacity () const

Retourne le nombre maximal d'�l�ments qui peuvent �tre stock�s dans le vecteur sans n�cessit� de r�allocation.

L'unique but de cette fonction est de fournir un indicateur de l'utilisation de m�moire de QVector. En g�n�ral, on va rarement appeler cette fonction. Si on veut connaitre le nombre d'�l�ments dans le vecteur, on appelle la fonction size().

Voir aussi reserve() et squeeze().

void QVector::clear ()

Retire tous les �l�ments du vecteur et lib�re la m�moire allou�e par le vecteur.

const_iterator QVector::constBegin () const

Retourne un it�rateur constant de style STL pointant sur le premier �l�ment du vecteur.

Voir aussi begin() et constEnd().

const T * QVector::constData () const

Retourne un pointeur constant sur les donn�es stock�es dans le vecteur. Le pointeur peut �tre utilis� pour acc�der aux �l�ments du vecteur. Le pointeur reste valide tant que le vecteur n'est pas r�allou�.

Cette fonction est utile lorsqu'on doit passer le vecteur � une fonction qui accepte un tableau C++.

Voir aussi data() et operator[]().

const_iterator QVector::constEnd () const

Retourne un it�rateur constant de style STL pointant sur l'�l�ment imaginaire apr�s le dernier �l�ment du vecteur.

Voir aussi constBegin() et end().

bool QVector::contains ( const T & value ) const

Retourne true si le vecteur contient une occurrence de value; sinon retourne false.

Cette fonction n�cessite d'avoir l‹operator==() impl�ment� pour le type T.

Voir aussi indexOf() et count().

int QVector::count ( const T & value ) const

Retourne le nombre d'occurrences de value dans le vecteur.

Cette fonction n�cessite d'avoir l‹operator==() impl�ment� pour le type T.

Voir aussi contains() et indexOf().

int QVector::count () const

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

Identique � size().

T * QVector::data ()

Retourne un pointeur sur les donn�es stock�es dans le vecteur. Le pointeur peut �tre utilis� pour acc�der et modifier les �l�ments du vecteur.

Exemple :

 QVector<int> vector(10);
 int *data = vector.data();
 for (int i = 0; i < 10; ++i)
     data[i] = 2 * i;

Le pointeur reste valide tant que le vecteur n'est pas r�allou�.

Cette fonction est utile pour passer le vecteur � une fonction qui accepte un tableau C++.

Voir aussi constData() et operator[]().

const T * QVector::data () const

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

bool QVector::empty () const

Cette fonction est fournie pour la compatibilit� STL. Elle est �quivalente � isEmpty(), retournant true si le vecteur est vide; sinon elle retourne false.

iterator QVector::end ()

Retourne un it�rateur de style STL pointant sur l'�l�ment imaginaire apr�s le dernier �l�ment de ce vecteur.

Voir aussi begin() et constEnd().

const_iterator QVector::end () const

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

bool QVector::endsWith ( const T & value ) const

Retourne true si ce vecteur n'est pas vide et que son dernier �l�ment est �gal � la valeur value ; sinon retourne false.

Cette fonction a �t� introduite dans Qt 4.5.

Voir aussi isEmpty() et last().

iterator QVector::erase ( iterator pos )

Enl�ve l'�l�ment point� par l'it�rateur pos du vecteur et retourne l'it�rateur pointant sur le prochain �l�ment du vecteur (qui peut �tre end()).

Voir aussi insert() et remove().

iterator QVector::erase ( iterator begin, iterator end )

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

Enl�ve tous les �l�ments de begin jusqu'� end (qui est gard�). Retourne un it�rateur qui pointe sur la m�me valeur que end avant l'appel.

QVector<T> & QVector::fill ( const T & value, int size = -1 )

Assigne la valeur value � tous les �l�ments du vecteur. Si la taille size est diff�rente de -1 (la valeur par d�faut), le vecteur est redimensionn� � la taille size avant.

Exemple :

 QVector<QString> vector(3);
 vector.fill("Yes");
 // vector: ["Yes", "Yes", "Yes"]
 
 vector.fill("oh", 5);
 // vector: ["oh", "oh", "oh", "oh", "oh"]

Voir aussi resize().

T & QVector::first ()

Retourne une r�f�rence sur le premier �l�ment du vecteur. Cette fonction suppose que le vecteur n'est pas vide.

Voir aussi last() et isEmpty().

const T & QVector::first () const

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

QVector<T> QVector::fromList ( const QList<T> & list ) [static]

Retourne un objet QVector avec les donn�es contenues dans la liste list.

Exemple :

 QStringList list;
 list << "Sven" << "Kim" << "Ola";
 
 QVector<QString> vect = QVector<QString>::fromList(list);
 // vect: ["Sven", "Kim", "Ola"]

Voir aussi toList() et QList::toVector().

QVector<T> QVector::fromStdVector ( const std::vector<T> & vector ) [static]

Retourne un objet QVector avec les donn�es contenues dans le vecteur vector. L'ordre des �l�ments dans le QVector est le m�me que dans le vecteur vector.

Exemple :

 std::vector<double> stdvector;
 vector.push_back(1.2);
 vector.push_back(0.5);
 vector.push_back(3.14);
 
 QVector<double> vector = QVector<double>::fromStdVector(stdvector);

Voir aussi toStdVector() et QList::fromStdList().

T & QVector::front ()

Cette fonction est fournie pour la compatibilit� STL. Elle est �quivalente � first().

const_reference QVector::front () const

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

int QVector::indexOf ( const T & value, int from = 0 ) const

Retourne la position de la premi�re occurrence de la valeur value dans le vecteur, cherchant vers l'avant en partant de l'index from. Retourne -1 si aucun �l�ment ne correspond.

Exemple :

 QVector<QString> vector;
 vector << "A" << "B" << "C" << "B" << "A";
 vector.indexOf("B");            // retourne 1
 vector.indexOf("B", 1);         // retourne 1
 vector.indexOf("B", 2);         // retourne 3
 vector.indexOf("X");            // retourne -1

Cette fonction n�cessite d'avoir l‹operator==() impl�ment� pour le type T.

Voir aussi lastIndexOf() et contains().

void QVector::insert ( int i, const T & value )

Ins�re la valeur value � la position i dans le vecteur. Si i est 0, la valeur est ajout�e au d�but du vecteur. Si i est size(), la valeur est ajout�e � la fin du vecteur.

Exemple :

 QVector<QString> vector;
 vector << "alpha" << "beta" << "delta";
 vector.insert(2, "gamma");
 // vector: ["alpha", "beta", "gamma", "delta"]

Pour les grands vecteurs, cette op�ration peut �tre lente (temps lin�aire), car elle n�cessite le d�placement de tous les �l�ments � partir de l'index i d'une position en m�moire. Si on souhaite une classe conteneur qui fournit une fonction insert() rapide, on utilise QLinkedList � la place.

Voir aussi append(), prepend() et remove().

iterator QVector::insert ( iterator before, int count, const T & value )

Ins�re count copies de la valeur value devant l'�l�ment point� par l'it�rateur before. Retourne un it�rateur pointant sur le premier �l�ment des �l�ments ins�r�s.

void QVector::insert ( int i, int count, const T & value )

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

Ins�re count copies de la valeur value � la position i dans le vecteur.

Exemple :

 QVector<double> vector;
 vector << 2.718 << 1.442 << 0.4342;
 vector.insert(1, 3, 9.9);
 // vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]

iterator QVector::insert ( iterator before, const T & value )

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

Ins�re la valeur value devant l'�l�ment point� par l'it�rateur before. Retourne un it�rateur pointant sur l'�l�ment ins�r�.

bool QVector::isEmpty () const

Retourne true si le vecteur � une taille nulle; sinon retourne false.

Voir aussi size() et resize().

T & QVector::last ()

Retourne une r�f�rence sur le dernier �l�ment du vecteur. Cette fonction suppose que le vecteur n'est pas vide.

Voir aussi first() et isEmpty().

const T & QVector::last () const

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

int QVector::lastIndexOf ( const T & value, int from = -1 ) const

Retourne la position de la derni�re occurrence de la valeur value dans le vecteur, cherchant en arri�re � partir de la position from. Si from est -1 (la valeur par d�faut), la recherche commence par le dernier �l�ment. Retourne -1 si l'�l�ment n'est pas trouv�.

Exemple :

 QList<QString> vector;
 vector << "A" << "B" << "C" << "B" << "A";
 vector.lastIndexOf("B");        // retourne 3
 vector.lastIndexOf("B", 3);     // retourne 3
 vector.lastIndexOf("B", 2);     // retourne 1
 vector.lastIndexOf("X");        // retourne -1

Cette fonction n�cessite d'avoir l‹operator==() impl�ment� pour le type T.

Voir aussi indexOf().

QVector<T> QVector::mid ( int pos, int length = -1 ) const

Retourne un vecteur dont les �l�ments sont copi�s � partir de ce vecteur, en commen�ant par la position pos. Si length est -1 (la valeur par d�faut), tous les �l�ments apr�s pos sont copi�s; sinon length �l�ments (ou tous les �l�ments restants s'il y en a moins que length) sont copi�s.

void QVector::pop_back ()

Cette fonction est fournie pour la compatibilit� STL. Elle est �quivalente � erase(end() - 1).

void QVector::pop_front ()

Cette fonction est fournie pour la compatibilit� STL. Elle est �quivalente � erase(begin()).

void QVector::prepend ( const T & value )

Ins�re la valeur value au d�but du vecteur.

Exemple :

 QVector<QString> vector;
 vector.prepend("one");
 vector.prepend("two");
 vector.prepend("three");
 // vector: ["three", "two", "one"]

Cette fonction est identique � vector.insert(0, value).

Pour les grands vecteurs, cette op�ration peut �tre lente (temps lin�aire), car elle n�cessite le d�placement de tous les �l�ments du vecteur d'une position en m�moire. Si on souhaite une classe conteneur qui fournit une fonction prepend() rapide, on utilise QList ou QLinkedList � la place.

Voir aussi append() et insert().

void QVector::push_back ( const T & value )

Cette fonction est fournie pour la compatibilit� STL. Elle est �quivalente � append(value).

void QVector::push_front ( const T & value )

Cette fonction est fournie pour la compatibilit� STL. Elle est �quivalente � prepend(value).

void QVector::remove ( int i )

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

Retire l'�l�ment � la position i.

Voir aussi insert(), replace() et fill().

void QVector::remove ( int i, int count )

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

Retire count �l�ments du milieu du vecteur, en commen�ant � partir de la position i.

Voir aussi insert(), replace() et fill().

void QVector::replace ( int i, const T & value )

Remplace l'�l�ment � la position i par la valeur value.

i doit �tre un index valide pour le vecteur (c'est-�-dire, 0 <= i < size()).

Voir aussi operator[]() et remove().

void QVector::reserve ( int size )

Essaie d'allouer de la m�moire pour au moins size �l�ments. Si on conna�t par avance la taille du vecteur, on peut appeler cette fonction et si on appelle resize() souvent, on aura s�rement de meilleures performances. Si la taille size est sous-estim�e, le pire qui peut arriver est que le QVector sera un peu plus lent.

L'unique but de cette fonction est de fournir des possibilit�s de meilleur contr�le de la m�moire par le QVector. En g�n�ral, on va rarement appeler cette fonction. Si on veut changer la taille du vecteur, on appelle resize().

Voir aussi squeeze() et capacity().

void QVector::resize ( int size )

D�finit la taille du vecteur � size. Si la taille size est plus grande que la taille courante, des �l�ments sont ajout�s � la fin; les nouveaux �l�ments sont initialis�s avec les valeurs retourn�es par le constructeur par d�faut. Si la taille size est inf�rieure � taille actuelle, des �l�ments sont retir�s � la fin.

Voir aussi size().

int QVector::size () const

Retourne le nombre d'�l�ments dans le vecteur.

Voir aussi isEmpty() et resize().

void QVector::squeeze ()

Lib�re toute m�moire non requise pour le stockage des �l�ments.

L'unique but de cette fonction est de fournir des possibilit�s de meilleur contr�le de la m�moire par le QVector. En g�n�ral, on va rarement appeler cette fonction.

Voir aussi reserve() et capacity().

bool QVector::startsWith ( const T & value ) const

Retourne true si ce vecteur n'est pas vide est que le premier �l�ment est �gal � la valeur value ; sinon retourne false.

Cette fonction a �t� introduite dans Qt 4.5.

Voir aussi isEmpty() et first().

QList<T> QVector::toList () const

Retourne un objet QList avec les donn�es contenues dans ce QVector.

Exemple :

 QVector<double> vect;
 vect << "red" << "green" << "blue" << "black";
 
 QList<double> list = vect.toList();
 // list: ["red", "green", "blue", "black"]

Voir aussi fromList() et QList::fromVector().

std::vector<T> QVector::toStdVector () const

Retourne un objet std::vector object avec les donn�es contenues dans ce QVector. Exemple :

 QVector<double> vector;
 vector << 1.2 << 0.5 << 3.14;
 
 std::vector<double> stdvector = vector.toStdVector();

Voir aussi fromStdVector() et QList::toStdList().

T QVector::value ( int i ) const

Retourne la valeur � la position i dans le vecteur.

Si l'index i est hors limite, la fonction retourne la valeur retourn�e par le constructeur par d�faut. Si on est certain que i est dans les limites, on peut utiliser la fonction at() � la place, laquelle est un peu plus rapide.

Voir aussi at() et operator[]().

T QVector::value ( int i, const T & defaultValeur ) const

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

Si l'index i est hors limite, la fonction retourne defaultValeur.

bool QVector::operator!= ( const QVector<T> & other ) const

Retourne true si other n'est pas �gal � ce vecteur; sinon retourne false.

Deux vecteurs sont consid�r�s comme �gaux s'ils contiennent les m�mes valeurs dans le m�me ordre.

Cette fonction n�cessite d'avoir l‹operator==() impl�ment� pour le type T.

Voir aussi operator==().

QVector<T> QVector::operator+ ( const QVector<T> & other ) const

Retourne un vecteur qui contient tous les �l�ments de ce vecteur suivis par tous les �l�ments du vecteur other.

Voir aussi operator+=().

QVector<T> & QVector::operator+= ( const QVector<T> & other )

Ajoute � la fin les �l�ments du vecteur other � ce vecteur et retourne une r�f�rence sur ce vecteur.

Voir aussi operator+() et append().

QVector<T> & QVector::operator+= ( const T & value )

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

Attache value au vecteur.

Voir aussi append() et operator<<().

QVector<T> & QVector::operator<< ( const T & value )

Attache value � ce vecteur et retourne une r�f�rence sur le vecteur.

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

QVector<T> & QVector::operator<< ( const QVector<T> & other )

Attache other � ce vecteur et retourne une r�f�rence sur le vecteur.

QVector<T> & QVector::operator= ( const QVector<T> & other )

Assigne other � ce vecteur et retourne une r�f�rence sur ce vecteur.

bool QVector::operator== ( const QVector<T> & other ) const

Retourne true si other est identique � ce vecteur; sinon retourne false.

Les deux vecteurs sont consid�r�s comme �gaux s'ils contiennent les m�mes valeurs dans le m�me ordre.

Cette fonction n�cessite d'avoir l‹operator==() impl�ment� pour le type T.

Voir aussi operator!=().

T & QVector::operator[] ( int i )

Retourne l'�l�ment � la position i comme une r�f�rence modifiable.

i doit �tre un index valide dans le vecteur (c'est-�-dire, 0 <= i < size()).

Il est � noter que l'utilisation d'un op�rateur non constant peut entrainer le QVector � faire une copie profonde.

Voir aussi at() et value().

const T & QVector::operator[] ( int i ) const

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

Identique � at(i).

En relation mais non membres de la classe

QDataStream & operator<< ( QDataStream & out, const QVector<T> & vector )

�crit le vecteur vector dans le flux out.

Cette fonction n�cessite d'avoir l‹operator<<() impl�ment� pour le type T.

Voir aussi Format des op�rateurs de QDtataStream.

QDataStream & operator>> ( QDataStream & in, QVector<T> & vector )

Lit un vecteur vector � partir du flux in.

Cette fonction n�cessite d'avoir l‹operator>>() impl�ment� pour le type T.

Voir aussi Format des op�rateurs de QDtataStream.

Remerciements

Merci � Alexandre Laurent pour la traduction ainsi qu'� Lo?c Leguay, Jonathan Courtois et Claude Leloup pour leur relecture !

Cette page est une traduction d'une page de la documentation de Qt, �crite par Nokia Corporation and/or its subsidiary(-ies). Les �ventuels probl�mes r�sultant d'une mauvaise traduction ne sont pas imputables � Nokia. Qt 4.7
Copyright © 2025 Developpez LLC. Tous droits r�serv�s Developpez LLC. Aucune reproduction, m�me partielle, ne peut �tre faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'� 3 ans de prison et jusqu'� 300 000 E de dommages et int�r�ts. Cette page est d�pos�e � la SACD.
Vous avez d�nich� une erreur ? Un bug ? Une redirection cass�e ? Ou tout autre probl�me, quel qu'il soit ? Ou bien vous d�sirez participer � ce projet de traduction ? N'h�sitez pas � nous contacter ou par MP !