Partilhar via


Classe de IEnumOnSTLImpl

Esta classe define uma interface de enumerador com base em uma coleção de STL.

template < 
   class Base, 
   const IID* piid, 
   class T, 
   class Copy, 
   class CollType 
> 
class ATL_NO_VTABLE IEnumOnSTLImpl : 
   public Base

Parâmetros

  • Base
    Uma interface de enumerador COM (IEnumXXXX).

  • piid
    Um ponteiro para o interface identificação da interface de enumeração.

  • T
    O tipo de item exposto pela interface de enumeração.

  • Copy
    classe de diretiva de impressão.

  • CollType
    Uma classe do contêiner de STL.

Membros

Métodos públicos

Nome

Descrição

IEnumOnSTLImpl::Clone

A implementação de IEnumXXXX::Clone.

IEnumOnSTLImpl::Init

Inicializa o enumerador.

IEnumOnSTLImpl::Next

A implementação de IEnumXXXX::Next.

IEnumOnSTLImpl::Reset

A implementação de IEnumXXXX::Reset.

IEnumOnSTLImpl::Skip

A implementação de IEnumXXXX::Skip.

Membros públicos de dados

Nome

Descrição

IEnumOnSTLImpl::m_iter

O iterador que representa a posição atual do enumerador dentro da coleção.

IEnumOnSTLImpl::m_pcollection

Um ponteiro para o contêiner de STL que contém os itens a serem enumerados.

IEnumOnSTLImpl::m_spUnk

O ponteiro de IUnknown de objeto que fornece a coleção.

Comentários

IEnumOnSTLImpl fornece a implementação para uma interface de enumerador COM onde os itens que estão sendo enumerados sejam armazenados em um contêiner STL- correspondente. Essa classe é análoga a classe de CComEnumImpl , que fornece uma implementação de uma interface enumerator com base em uma matriz.

Dica

Consulte CComEnumImpl::Init para obter detalhes sobre as diferenças entre CComEnumImpl adicionais e IEnumOnSTLImpl.

Normalmente, você não precisará criar sua própria classe de enumerador derivando de essa implementação da interface. Se você desejar usar um enumerador ATL- fornecido com base em um recipiente de STL, é mais comum criar uma instância de CComEnumOnSTL, ou criar uma classe de coleção que retorna um enumerador derivando de ICollectionOnSTLImpl.

Em o entanto, se você precisar fornecer um enumerador personalizado (por exemplo, um que expõe interfaces além da interface de enumerador), você pode derivar da classe. Em esta situação é provável que você precisará substituir o método de clone para fornecer sua própria implementação.

Hierarquia de herança

Base

IEnumOnSTLImpl

Requisitos

Cabeçalho: atlcom.h

Consulte também

Outros recursos

Visão geral da classe de ATL