Partilhar via


CTypedPtrArray Classe

Fornece um "wrapper" seguro para tipos para objetos de classe CPtrArray ou CObArray.

Sintaxe

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

Parâmetros

BASE_CLASS
Classe base da classe de matriz de ponteiro digitada; deve ser uma classe de matriz (CObArray ou CPtrArray).

TIPO
Tipo dos elementos armazenados na matriz de classe base.

Membros

Métodos Públicos

Nome Descrição
CTypedPtrArray::Adicionar Adiciona um novo elemento ao final de uma matriz. Aumenta a matriz, se necessário
CTypedPtrArray::Acrescentar Adiciona o conteúdo de uma matriz ao final de outra. Aumenta a matriz, se necessário
CTypedPtrArray::Copiar Copia outra matriz para a matriz; Aumenta a matriz, se necessário.
CTypedPtrArray::ElementAt Retorna uma referência temporária ao ponteiro do elemento dentro da matriz.
CTypedPtrArray::GetAt Devolve o valor a um determinado índice.
CTypedPtrArray::InsertAt Insere um elemento (ou todos os elementos em outra matriz) em um índice especificado.
CTypedPtrArray::SetAt Define o valor de um determinado índice; matriz não permitida a crescer.
CTypedPtrArray::SetAtGrow Define o valor de um determinado índice; Aumenta a matriz, se necessário.

Operadores Públicos

Nome Descrição
CTypedPtrArray::operador [ ] Define ou obtém o elemento no índice especificado.

Observações

Quando você usa CTypedPtrArray em vez de CPtrArray ou , CObArrayo recurso de verificação de tipos C++ ajuda a eliminar erros causados por tipos de ponteiro incompatíveis.

Além disso, o CTypedPtrArray invólucro executa grande parte da fundição que seria necessária se você usasse CObArray ou CPtrArray.

Como todas as CTypedPtrArray funções estão embutidas, o uso desse modelo não afeta significativamente o tamanho ou a velocidade do seu código.

Para obter mais informações sobre como usar CTypedPtrArrayo , consulte os artigos Coleções e classes deTemplate-Based.

Hierarquia de herança

BASE_CLASS

CTypedPtrArray

Requerimentos

Cabeçalho: afxtempl.h

CTypedPtrArray::Adicionar

Esta função de membro chama BASE_CLASS::Add.

INT_PTR Add(TYPE newElement);

Parâmetros

TIPO
Parâmetro de modelo que especifica o tipo de elemento a ser adicionado à matriz.

newElement
O elemento a ser adicionado a esta matriz.

Valor de retorno

O índice do elemento adicionado.

Observações

Para observações mais detalhadas, consulte CObArray::Add.

CTypedPtrArray::Acrescentar

Esta função de membro chama BASE_CLASS::Append**.

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

Parâmetros

BASE_CLASS
Classe base da classe de matriz de ponteiro digitada; deve ser uma classe de matriz ( CObArray ou CPtrArray).

TIPO
Tipo dos elementos armazenados na matriz de classe base.

SRC
Origem dos elementos a serem anexados a uma matriz.

Valor de retorno

O índice do primeiro elemento acrescentado.

Observações

Para observações mais detalhadas, consulte CObArray::Append.

CTypedPtrArray::Copiar

Esta função de membro chama BASE_CLASS::Copy.

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

Parâmetros

BASE_CLASS
Classe base da classe de matriz de ponteiro digitada; deve ser uma classe de matriz ( CObArray ou CPtrArray).

TIPO
Tipo dos elementos armazenados na matriz de classe base.

SRC
Origem dos elementos a serem copiados para uma matriz.

Observações

Para observações mais detalhadas, consulte CObArray::Copy.

CTypedPtrArray::ElementAt

Esta função embutida chama BASE_CLASS::ElementAt.

TYPE& ElementAt(INT_PTR nIndex);

Parâmetros

TIPO
Parâmetro de modelo que especifica o tipo de elementos armazenados nesta matriz.

nÍndice
Um índice inteiro maior ou igual a 0 e menor ou igual ao valor retornado por BASE_CLASS::GetUpperBound.

Valor de retorno

Uma referência temporária ao elemento no local especificado por nIndex. Este elemento é do tipo especificado pelo parâmetro de modelo TYPE.

Observações

Para observações mais detalhadas, consulte CObArray::ElementAt.

CTypedPtrArray::GetAt

Esta função embutida chama BASE_CLASS::GetAt.

TYPE GetAt(INT_PTR nIndex) const;

Parâmetros

TIPO
Parâmetro de modelo que especifica o tipo de elementos armazenados na matriz.

nÍndice
Um índice inteiro maior ou igual a 0 e menor ou igual ao valor retornado por BASE_CLASS::GetUpperBound.

Valor de retorno

Uma cópia do elemento no local especificado por nIndex. Este elemento é do tipo especificado pelo parâmetro de modelo TYPE.

Observações

Para observações mais detalhadas, consulte CObArray::GetAt

CTypedPtrArray::InsertAt

Esta função de membro chama BASE_CLASS::InsertAt.

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

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

Parâmetros

nÍndice
Um índice inteiro que pode ser maior do que o valor retornado por CObArray::GetUpperBound.

TIPO
Tipo dos elementos armazenados na matriz de classe base.

newElement
O ponteiro de objeto a ser colocado nesta matriz. Um newElement do valor NULL é permitido.

nContagem
O número de vezes que este elemento deve ser inserido (o padrão é 1).

nStartIndex
Um índice inteiro que pode ser maior do que o valor retornado por CObArray::GetUpperBound.

BASE_CLASS
Classe base da classe de matriz de ponteiro digitada; deve ser uma classe de matriz ( CObArray ou CPtrArray).

pNewArray
Outra matriz que contém elementos a serem adicionados a essa matriz.

Observações

Para observações mais detalhadas, consulte CObArray::InsertAt.

CTypedPtrArray::operador [ ]

Esses operadores em linha chamam BASE_CLASS::operator [ ].

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

Parâmetros

TIPO
Parâmetro de modelo que especifica o tipo de elementos armazenados na matriz.

nÍndice
Um índice inteiro maior ou igual a 0 e menor ou igual ao valor retornado por BASE_CLASS::GetUpperBound.

Observações

O primeiro operador, chamado para matrizes que não constsão, pode ser usado à direita (valor r) ou à esquerda (valor l) de uma instrução de atribuição. O segundo, invocado para const matrizes, pode ser usado apenas à direita.

A versão Debug da biblioteca afirma se o subscrito (no lado esquerdo ou direito de uma instrução de atribuição) está fora dos limites.

CTypedPtrArray::SetAt

Esta função de membro chama BASE_CLASS::SetAt.

void SetAt(
    INT_PTR nIndex,
    TYPE ptr);

Parâmetros

nÍndice
Um índice inteiro maior ou igual a 0 e menor ou igual ao valor retornado por CObArray::GetUpperBound.

TIPO
Tipo dos elementos armazenados na matriz de classe base.

ptr
Um ponteiro para o elemento a ser inserido na matriz no nIndex. Um valor NULL é permitido.

Observações

Para observações mais detalhadas, consulte CObArray::SetAt.

CTypedPtrArray::SetAtGrow

Esta função de membro chama BASE_CLASS::SetAtGrow.

void SetAtGrow(
    INT_PTR nIndex,
    TYPE newElement);

Parâmetros

nÍndice
Um índice inteiro maior ou igual a 0.

TIPO
Tipo dos elementos armazenados na matriz de classe base.

newElement
O ponteiro de objeto a ser adicionado a essa matriz. Um valor NULL é permitido.

Observações

Para observações mais detalhadas, consulte CObArray::SetAtGrow.

Ver também

MFC Amostra COLLECT
Gráfico de Hierarquia
Classe CPtrArray
Classe CObArray