Sdílet prostřednictvím


CTypedPtrArray – třída

Poskytuje typově bezpečný "obálka" pro objekty třídy CPtrArray nebo CObArray.

Syntaxe

template<class BASE_CLASS, class TYPE>
class CTypedPtrArray : public BASE_CLASS

Parametry

BASE_CLASS
Základní třída třídy pole typu ukazatele; musí být maticová třída ( CObArray nebo CPtrArray).

TYP
Typ prvků uložených v poli základní třídy

Členové

Veřejné metody

Název Popis
CTypedPtrArray::Add Přidá nový prvek na konec pole. V případě potřeby pole zvětšte.
CTypedPtrArray::Append Přidá obsah jednoho pole na konec druhého. V případě potřeby pole zvětšte.
CTypedPtrArray::Copy Zkopíruje další pole do pole; v případě potřeby pole zvětšuje.
CTypedPtrArray::ElementAt Vrátí dočasný odkaz na ukazatel prvku v rámci pole.
CTypedPtrArray::GetAt Vrátí hodnotu v daném indexu.
CTypedPtrArray::InsertAt Vloží prvek (nebo všechny prvky v jiném poli) do zadaného indexu.
CTypedPtrArray::SetAt Nastaví hodnotu pro daný index; pole nelze zvětšit.
CTypedPtrArray::SetAtGrow Nastaví hodnotu pro daný index; v případě potřeby pole zvětšuje.

Veřejné operátory

Název Popis
CTypedPtrArray::operator [ ] Nastaví nebo získá prvek v zadaném indexu.

Poznámky

Pokud používáte CTypedPtrArray místo CPtrArray nebo CObArray, nástroj pro kontrolu typů jazyka C++ pomáhá eliminovat chyby způsobené neshodnými typy ukazatelů.

Kromě toho obálka CTypedPtrArray provádí většinu přetypování, které by bylo nutné, pokud jste použili CObArray nebo CPtrArray.

Vzhledem k tomu, že jsou všechny CTypedPtrArray funkce vložené, použití této šablony nemá významný vliv na velikost nebo rychlost kódu.

Další informace o použití CTypedPtrArraynaleznete v článcích Kolekce a třídy založené na šablonách.

Hierarchie dědičnosti

BASE_CLASS

CTypedPtrArray

Požadavky

Hlavička: afxtempl.h

CTypedPtrArray::Add

Tato členová funkce volá BASE_CLASS::Add.

INT_PTR Add(TYPE newElement);

Parametry

TYP
Parametr šablony určující typ prvku, který se má přidat do pole.

newElement
Prvek, který má být přidán do tohoto pole.

Návratová hodnota

Index přidaného prvku.

Poznámky

Podrobnější poznámky naleznete v tématu CObArray::Add.

CTypedPtrArray::Append

Tato členová funkce volá BASE_CLASS::Append**.

INT_PTR Append(const CTypedPtrArray<BASE_CLASS, TYPE>& src);

Parametry

BASE_CLASS
Základní třída třídy pole typu ukazatele; musí být maticová třída ( CObArray nebo CPtrArray).

TYP
Typ prvků uložených v poli základní třídy

Src
Zdroj prvků, které mají být připojeny k poli.

Návratová hodnota

Index prvního připojeného prvku.

Poznámky

Podrobnější poznámky najdete v tématu CObArray::Append.

CTypedPtrArray::Copy

Tato členová funkce volá BASE_CLASS::Copy.

void Copy(const CTypedPtrArray<BASE_CLASS, TYPE>& src);

Parametry

BASE_CLASS
Základní třída třídy pole typu ukazatele; musí být maticová třída ( CObArray nebo CPtrArray).

TYP
Typ prvků uložených v poli základní třídy

Src
Zdroj prvků, které se mají zkopírovat do pole.

Poznámky

Podrobnější poznámky najdete v tématu CObArray::Copy.

CTypedPtrArray::ElementAt

Tato vložená funkce volá BASE_CLASS::ElementAt.

TYPE& ElementAt(INT_PTR nIndex);

Parametry

TYP
Parametr šablony určující typ prvků uložených v tomto poli.

nIndex
Celočíselná hodnota, která je větší nebo rovna 0 a menší nebo rovna hodnotě vrácené : BASE_CLASS:GetUpperBound.

Návratová hodnota

Dočasný odkaz na prvek v umístění určeném parametrem nIndex. Tento prvek je typu určeného parametrem šablony TYPE.

Poznámky

Podrobnější poznámky naleznete v tématu CObArray::ElementAt.

CTypedPtrArray::GetAt

Tato vložená funkce volá BASE_CLASS::GetAt.

TYPE GetAt(INT_PTR nIndex) const;

Parametry

TYP
Parametr šablony určující typ prvků uložených v poli

nIndex
Celočíselná hodnota, která je větší nebo rovna 0 a menší nebo rovna hodnotě vrácené : BASE_CLASS:GetUpperBound.

Návratová hodnota

Kopie elementu v umístění určeném parametrem nIndex. Tento prvek je typu určeného parametrem šablony TYPE.

Poznámky

Podrobnější poznámky najdete v tématu CObArray::GetAt

CTypedPtrArray::InsertAt

Tato členová funkce volá BASE_CLASS::InsertAt.

void InsertAt(
    INT_PTR nIndex,
    TYPE newElement,
    INT_PTR nCount = 1);

void InsertAt(
    INT_PTR nStartIndex,
    CTypedPtrArray<BASE_CLASS, TYPE>* pNewArray);

Parametry

nIndex
Celočíselné indexy, které mohou být větší než hodnota vrácená CObArray ::GetUpperBound.

TYP
Typ prvků uložených v poli základní třídy

newElement
Ukazatel objektu, který se má umístit do tohoto pole. Je povolen novýElement hodnoty NULL .

nCount
Počet vložení tohoto prvku (výchozí hodnota je 1).

nStartIndex
Celočíselné indexy, které mohou být větší než hodnota vrácená CObArray::GetUpperBoundhodnotou .

BASE_CLASS
Základní třída třídy pole typu ukazatele; musí být maticová třída ( CObArray nebo CPtrArray).

pNewArray
Další pole, které obsahuje prvky, které mají být přidány do tohoto pole.

Poznámky

Podrobnější poznámky naleznete v tématu CObArray::InsertAt.

CTypedPtrArray::operator [ ]

Tyto vložené operátory volají BASE_CLASS::operator [ ].

TYPE& operator[ ](int_ptr nindex);
TYPE operator[ ](int_ptr nindex) const;

Parametry

TYP
Parametr šablony určující typ prvků uložených v poli

nIndex
Celočíselná hodnota, která je větší nebo rovna 0 a menší nebo rovna hodnotě vrácené : BASE_CLASS:GetUpperBound.

Poznámky

První operátor, který volá pole, která nejsou const, lze použít na pravé straně (r-hodnota) nebo vlevo (l-hodnota) příkazu přiřazení. Druhý, vyvolaný pro const pole, lze použít pouze vpravo.

Ladicí verze knihovny se používá, pokud je dolní index (na levé nebo pravé straně příkazu přiřazení) mimo hranice.

CTypedPtrArray::SetAt

Tato členová funkce volá BASE_CLASS::SetAt.

void SetAt(
    INT_PTR nIndex,
    TYPE ptr);

Parametry

nIndex
Celočíselná hodnota, která je větší nebo rovna 0 a menší nebo rovna hodnotě vrácené CObArray::GetUpperBound.

TYP
Typ prvků uložených v poli základní třídy

ptr
Ukazatel na prvek, který má být vložen do pole v nIndex. Je povolená hodnota NULL.

Poznámky

Podrobnější poznámky naleznete v tématu CObArray::SetAt.

CTypedPtrArray::SetAtGrow

Tato členová funkce volá BASE_CLASS::SetAtGrow.

void SetAtGrow(
    INT_PTR nIndex,
    TYPE newElement);

Parametry

nIndex
Celočíselná hodnota, která je větší nebo rovna 0.

TYP
Typ prvků uložených v poli základní třídy

newElement
Ukazatel objektu, který se má přidat do tohoto pole. Je povolená hodnota NULL .

Poznámky

Podrobnější poznámky naleznete v tématu CObArray::SetAtGrow.

Viz také

MFC – Ukázka COLLECT
Graf hierarchie
CPtrArray – třída
CObArray – třída