Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
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.