Compartilhar via


Classe CArray

Suporta matrizes que são como matrizes de C, mas pode crescer e reduz dinamicamente como necessário.

template < class TYPE, class ARG_TYPE = const TYPE& > 
class CArray : 
   public CObject

Parâmetros

  • TYPE
    O parâmetro do modelo que especifica o tipo de objetos armazenados na matriz. TYPE é um parametro que é retornado por CArray.

  • ARG _ TYPE
    O parâmetro do modelo que especifica o tipo de argumento que é usada para acessar objetos armazenados na matriz. Geralmente uma referência a TYPE. ARG_TYPE é um parametro que é passado para CArray.

Membros

Construtores public

Nome

Descrição

CArray::CArray

Constrói uma matriz vazia.

Métodos públicos

Nome

Descrição

CArray::Add

Adiciona um elemento ao final da matriz; aumenta a matriz se necessário.

CArray::Append

Acrescenta uma matriz a outra matriz; aumenta a matriz se necessário

CArray::Copy

Copia uma matriz a outra matriz; aumenta a matriz se necessário.

CArray::ElementAt

Retorna uma referência temporária ao ponteiro de elemento dentro da matriz.

CArray::FreeExtra

Qualquer libera a memória não usado acima do limite superior atual.

CArray::GetAt

Retorna o valor em um índice especificado.

CArray::GetCount

Obtém o número de elementos em esta matriz.

CArray::GetData

Permite acesso aos elementos na matriz. Pode ser NULO.

CArray::GetSize

Obtém o número de elementos em esta matriz.

CArray::GetUpperBound

Retorna o índice válido maior.

CArray::InsertAt

Insere elemento (ou todos os elementos em outros matriz) em um índice especificado.

CArray::IsEmpty

Determina se a matriz está vazia.

CArray::RemoveAll

Remove todos os elementos da matriz.

CArray::RemoveAt

Remove um elemento em um índice específico.

CArray::SetAt

Defina o valor para um índice dado; matriz não permitida crescer.

CArray::SetAtGrow

Defina o valor para um índice dado; aumenta a matriz se necessário.

CArray::SetSize

Define o número de elementos a serem contidos em esta matriz.

Operadores públicos

Nome

Descrição

[CArray::operator]

Obtém ou define o elemento no índice especificado.

Comentários

Matriz de índices sempre início na posição 0. Você pode decidir se corrigir o limite superior ou ativar a matriz para expandir quando você adiciona elementos após o limite atual. A memória é atribuída continuamente ao limite superior, mesmo se alguns elementos são nulos.

Dica

A maioria dos métodos de redimensionamento um objeto de CArray ou para adicionar elementos uso memcpy_s aos elementos de animação.Este é um problema pois memcpy_s não é compatível com qualquer objeto que exigem o construtor ser chamados.Se os itens em CArray não são compatíveis com memcpy_s, você deve criar uma nova CArray de tamanho apropriado.Você deve usar CArray::Copy e CArray::SetAt para preencher a nova matriz porque esses métodos usam um operador de atribuição em vez de memcpy_s.

Como com matriz de energia AC, última hora de acesso para um elemento indexado CArray são constantes e são independentes do tamanho da matriz.

Dica

Antes de usar uma matriz, use SetSize para estabelecer o tamanho e atribuir a memória para ele.Se você não usar SetSize, adicione os elementos a sua matriz freqüentemente faz com que ele manipule a ser realocada e copiado.A realocação freqüentes e copiar e são não podem fragmentar a memória.

Se você precisar de um despejo dos elementos individuais em uma matriz, você deve definir o tamanho do objeto de CDumpContext a 1 ou maior.

Determinadas funções de membro de essa classe chamam funções auxiliares globais que devem ser personalizadas para a maioria dos usos da classe de CArray . Consulte o tópico Auxiliares de classe de coleção na seção de macros e de Globais MFC.

A derivação da classe da matriz é como a derivação da lista.

Para obter mais informações sobre como usar CArray, consulte o artigo coleções.

Hierarquia de herança

CObject

CArray

Requisitos

Header: afxtempl.h

Consulte também

Referência

Classe CObject

Gráfico da hierarquia

Classe CObArray

Conceitos

O exemplo COLETA MFC

Outros recursos

Auxiliares da classe de coleção