Share via


CSimpleArray-klasse

Opmerking

De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Deze klasse biedt methoden voor het beheren van een eenvoudige matrix.

Syntaxis

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

Parameterwaarden

T
Het type gegevens dat moet worden opgeslagen in de matrix.

TEqual
Een kenmerkobject, het definiëren van de gelijkheidstest voor elementen van het type T.

Leden

Openbare constructors

Naam Description
CSimpleArray::CSimpleArray De constructor voor de eenvoudige matrix.
CSimpleArray::~CSimpleArray De destructor voor de eenvoudige matrix.

Openbare methoden

Naam Description
CSimpleArray::Toevoegen Hiermee voegt u een nieuw element toe aan de matrix.
CSimpleArray::Zoeken Hiermee zoekt u een element in de matrix.
CSimpleArray::GetData Retourneert een aanwijzer naar de gegevens die zijn opgeslagen in de matrix.
CSimpleArray::GetSize Retourneert het aantal elementen dat is opgeslagen in de matrix.
CSimpleArray::Remove Hiermee verwijdert u een bepaald element uit de matrix.
CSimpleArray::RemoveAll Hiermee verwijdert u alle elementen uit de matrix.
CSimpleArray::RemoveAt Hiermee verwijdert u het opgegeven element uit de matrix.
CSimpleArray::SetAtIndex Hiermee stelt u het opgegeven element in de matrix in.

Openbare operators

Naam Description
CSimpleArray::operator[] Hiermee haalt u een element op uit de matrix.
CSimpleArray::operator = Toewijzingsoperator.

Opmerkingen

CSimpleArray biedt methoden voor het maken en beheren van een eenvoudige matrix van elk willekeurig type T.

De parameter TEqual biedt een manier om een gelijkheidsfunctie te definiëren voor twee elementen van het type T. Door een klasse te maken die vergelijkbaar is met CSimpleArrayEqualHelper, is het mogelijk om het gedrag van de gelijkheidstest voor een bepaalde matrix te wijzigen. Als u bijvoorbeeld te maken hebt met een matrix met aanwijzers, kan het handig zijn om de gelijkheid te definiëren, afhankelijk van de waarden waarnaar de verwijzingen verwijzen. De standaard implementatie maakt gebruik van operator=().

Zowel CSimpleArrayals CSimpleMap zijn ontworpen voor een klein aantal elementen. CAtlArray en CAtlMap moeten worden gebruikt wanneer de matrix een groot aantal elementen bevat.

Requirements

Koptekst: atlsimpcoll.h

Example

// 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::Toevoegen

Hiermee voegt u een nieuw element toe aan de matrix.

BOOL Add(const T& t);

Parameterwaarden

T
Het element dat moet worden toegevoegd aan de matrix.

Retourwaarde

Retourneert TRUE als het element is toegevoegd aan de matrix, anders ONWAAR.

Example

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

CSimpleArray::CSimpleArray

De constructor voor het matrixobject.

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

Parameterwaarden

Src
Een bestaand CSimpleArray object.

Opmerkingen

Initialiseert de gegevensleden, maakt een nieuw leeg CSimpleArray object of een kopie van een bestaand CSimpleArray object.

CSimpleArray::~CSimpleArray

De destructor.

~CSimpleArray();

Opmerkingen

Alle toegewezen resources worden vrijgemaakt.

CSimpleArray::Zoeken

Hiermee zoekt u een element in de matrix.

int Find(const T& t) const;

Parameterwaarden

T
Het element waarnaar moet worden gezocht.

Retourwaarde

Retourneert de index van het gevonden element of -1 als het element niet wordt gevonden.

Example

// 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

Retourneert een aanwijzer naar de gegevens die zijn opgeslagen in de matrix.

T* GetData() const;

Retourwaarde

Retourneert een aanwijzer naar de gegevens in de matrix.

CSimpleArray::GetSize

Retourneert het aantal elementen dat is opgeslagen in de matrix.

int GetSize() const;

Retourwaarde

Retourneert het aantal elementen dat is opgeslagen in de matrix.

CSimpleArray::operator []

Hiermee haalt u een element op uit de matrix.

T& operator[](int nindex);

Parameterwaarden

nIndex
De elementindex.

Retourwaarde

Retourneert het element van de matrix waarnaar wordt verwezen door nIndex.

Example

// 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 =

Toewijzingsoperator.

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

Parameterwaarden

Src
De matrix die moet worden gekopieerd.

Retourwaarde

Retourneert een aanwijzer naar het bijgewerkte CSimpleArray object.

Opmerkingen

Kopieert alle elementen van het CSimpleArray object waarnaar wordt verwezen door src in het huidige matrixobject, waarbij alle bestaande gegevens worden vervangen.

Example

// 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

Hiermee verwijdert u een bepaald element uit de matrix.

BOOL Remove(const T& t);

Parameterwaarden

T
Het element dat uit de matrix moet worden verwijderd.

Retourwaarde

Retourneert TRUE als het element wordt gevonden en verwijderd, anders ONWAAR.

Opmerkingen

Wanneer een element wordt verwijderd, worden de resterende elementen in de matrix opnieuw genummerd om de lege ruimte te vullen.

CSimpleArray::RemoveAll

Hiermee verwijdert u alle elementen uit de matrix.

void RemoveAll();

Opmerkingen

Hiermee verwijdert u alle elementen die momenteel zijn opgeslagen in de matrix.

CSimpleArray::RemoveAt

Hiermee verwijdert u het opgegeven element uit de matrix.

BOOL RemoveAt(int nIndex);

Parameterwaarden

nIndex
Index die verwijst naar het element dat moet worden verwijderd.

Retourwaarde

Retourneert TRUE als het element is verwijderd, FALSE als de index ongeldig is.

Opmerkingen

Wanneer een element wordt verwijderd, worden de resterende elementen in de matrix opnieuw genummerd om de lege ruimte te vullen.

CSimpleArray::SetAtIndex

Stel het opgegeven element in de matrix in.

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

Parameterwaarden

nIndex
De index van het element dat moet worden gewijzigd.

T
De waarde die moet worden toegewezen aan het opgegeven element.

Retourwaarde

Retourneert WAAR als deze is geslaagd, ONWAAR als de index niet geldig is.

Zie ook

Overzicht van klassen