Partager via


CSimpleArray, classe

Cette classe fournit des méthodes pour gérer un tableau simple.

Syntaxe

template <class T, class TEqual = CSimpleArrayEqualHelper<T>>
class CSimpleArray

Paramètres

T
Type de données à stocker dans le tableau.

TEqual
Objet trait, définissant le test d’égalité pour les éléments de type T.

Membres

Constructeurs publics

Nom Description
CSimpleArray ::CSimpleArray Constructeur pour le tableau simple.
CSimpleArray ::~CSimpleArray Destructeur pour le tableau simple.

Méthodes publiques

Nom Description
CSimpleArray ::Add Ajoute un nouvel élément au tableau.
CSimpleArray ::Find Recherche un élément dans le tableau.
CSimpleArray ::GetData Retourne un pointeur vers les données stockées dans le tableau.
CSimpleArray ::GetSize Retourne le nombre d’éléments stockés dans le tableau.
CSimpleArray ::Remove Supprime un élément donné du tableau.
CSimpleArray ::RemoveAll Supprime tous les éléments du tableau.
CSimpleArray ::RemoveAt Supprime l’élément spécifié du tableau.
CSimpleArray ::SetAtIndex Définit l’élément spécifié dans le tableau.

Opérateurs publics

Nom Description
CSimpleArray ::operator[] Récupère un élément du tableau.
CSimpleArray ::operator = Opérateur d'assignation.

Notes

CSimpleArray fournit des méthodes pour créer et gérer un tableau simple, d’un type Tdonné.

Le paramètre TEqual fournit un moyen de définir une fonction d’égalité pour deux éléments de type T. En créant une classe similaire à CSimpleArrayEqualHelper, il est possible de modifier le comportement du test d’égalité pour un tableau donné. Par exemple, lorsque vous traitez d’un tableau de pointeurs, il peut être utile de définir l’égalité en fonction des valeurs référencées par les pointeurs. L’implémentation par défaut utilise operator=().

Les deux CSimpleArray et CSimpleMap sont conçus pour un petit nombre d’éléments. CAtlArray et CAtlMap doivent être utilisés lorsque le tableau contient un grand nombre d’éléments.

Spécifications

En-tête : atlsimpcoll.h

Exemple

// Create an array of integers
CSimpleArray<int> iArray;

// Create an array of char pointers
// and use a new equality function
CSimpleArray<char *, MyEqualityEqualHelper<char *> > cMyArray;   

CSimpleArray ::Add

Ajoute un nouvel élément au tableau.

BOOL Add(const T& t);

Paramètres

t
Élément à ajouter au tableau.

Valeur de retour

Retourne TRUE si l’élément est correctement ajouté au tableau, FALSE sinon.

Exemple

// Create an array of integers and add some elements
CSimpleArray<int> iMyArray;
for (int i = 0; i < 10; i++)
   iMyArray.Add(i);  

CSimpleArray ::CSimpleArray

Constructeur de l’objet tableau.

CSimpleArray(const CSimpleArray<T, TEqual>& src);
CSimpleArray();

Paramètres

src
Objet CSimpleArray existant.

Notes

Initialise les membres de données, crée un objet vide CSimpleArray ou une copie d’un objet existant CSimpleArray .

CSimpleArray ::~CSimpleArray

Destructeur.

~CSimpleArray();

Notes

Libère toutes les ressources allouées.

CSimpleArray ::Find

Recherche un élément dans le tableau.

int Find(const T& t) const;

Paramètres

t
Élément pour lequel effectuer une recherche.

Valeur de retour

Retourne l’index de l’élément trouvé, ou -1 si l’élément est introuvable.

Exemple

// Create an array of floats and search for a particular element

CSimpleArray<float> fMyArray;

for (int i = 0; i < 10; i++)
   fMyArray.Add((float)i * 100);

int e = fMyArray.Find(200);
if (e == -1)
   _tprintf_s(_T("Could not find element\n"));
else
   _tprintf_s(_T("Found the element at location %d\n"), e);   

CSimpleArray ::GetData

Retourne un pointeur vers les données stockées dans le tableau.

T* GetData() const;

Valeur de retour

Retourne un pointeur vers les données du tableau.

CSimpleArray ::GetSize

Retourne le nombre d’éléments stockés dans le tableau.

int GetSize() const;

Valeur de retour

Retourne le nombre d’éléments stockés dans le tableau.

CSimpleArray ::operator []

Récupère un élément du tableau.

T& operator[](int nindex);

Paramètres

nIndex
Index de l’élément.

Valeur de retour

Retourne l’élément du tableau référencé par nIndex.

Exemple

// Create an array and display its contents
 CSimpleArray<int> iMySampleArray;

 for (int i = 0; i < 10; i++)
    iMySampleArray.Add(i);

 for (int i = 0; i < iMySampleArray.GetSize(); i++)
    _tprintf_s(_T("Array index %d contains %d\n"), i, iMySampleArray[i]);

CSimpleArray ::operator =

Opérateur d'assignation.

CSimpleArray<T, TEqual>
& operator=(
    const CSimpleArray<T, TEqual>& src);

Paramètres

src
Tableau à copier.

Valeur de retour

Retourne un pointeur vers l’objet mis à jour CSimpleArray .

Notes

Copie tous les éléments de l’objet CSimpleArray référencé par src dans l’objet tableau actuel, en remplaçant toutes les données existantes.

Exemple

// Create an array of chars and copy it to a second array
CSimpleArray<char> cMyArray1;
cMyArray1.Add('a');
CSimpleArray<char> cMyArray2;
cMyArray2 = cMyArray1;
ATLASSERT(cMyArray2[0] == 'a');   

CSimpleArray ::Remove

Supprime un élément donné du tableau.

BOOL Remove(const T& t);

Paramètres

t
Élément à supprimer du tableau.

Valeur de retour

Retourne TRUE si l’élément est trouvé et supprimé ; sinon, FALSE.

Notes

Lorsqu’un élément est supprimé, les éléments restants du tableau sont renumérotés pour remplir l’espace vide.

CSimpleArray ::RemoveAll

Supprime tous les éléments du tableau.

void RemoveAll();

Notes

Supprime tous les éléments actuellement stockés dans le tableau.

CSimpleArray ::RemoveAt

Supprime l’élément spécifié du tableau.

BOOL RemoveAt(int nIndex);

Paramètres

nIndex
Index pointant vers l’élément à supprimer.

Valeur de retour

Retourne TRUE si l’élément a été supprimé, FALSE si l’index n’était pas valide.

Notes

Lorsqu’un élément est supprimé, les éléments restants du tableau sont renumérotés pour remplir l’espace vide.

CSimpleArray ::SetAtIndex

Définissez l’élément spécifié dans le tableau.

BOOL SetAtIndex(
    int nIndex,
    const T& t);

Paramètres

nIndex
Index de l’élément à modifier.

t
Valeur à assigner à l’élément spécifié.

Valeur de retour

Retourne TRUE si elle réussit, FALSE si l’index n’a pas été valide.

Voir aussi

Vue d’ensemble de la classe