Compartilhar via


Classe de pilha

Uma classe de adaptador do contêiner do modelo que fornece uma limitação da funcionalidade que limita o acesso ao elemento adicionado recentemente a qualquer tipo de contêiner subjacente. A classe da pilha é usada quando é importante estar claro que somente as operações de pilha estão sendo executadas no contêiner.

template < 
   class Type,  
   class Container=deque<Type>  
> 
class stack

Parâmetros

  • Tipo
    O tipo de dados do elemento a ser armazenado na pilha.

  • Container
    O tipo de contêiner subjacente usado para implementar a pilha. O valor padrão é a classe deque*<Type>*.

Comentários

Os elementos da classe Tipo estipulados no primeiro parâmetro do modelo de um objeto da pilha são sinônimos com value_type e devem corresponder ao tipo de elemento na classe subjacente Contêiner do contêiner estipulado por segundo parâmetro do modelo. Tipo Deve ser assinalável, de modo que é possível copiar objetos desse tipo e atribuir valores às variáveis do tipo.

As classes subjacentes adequadas do contêiner da pilha incluem deque, lista, e vetor, ou qualquer outro contêiner de sequência que oferecer suporte a operações de back, de push_back, e de pop_back. A classe subjacente do contêiner são encapsuladas no adaptador de contêiner, que expõe apenas o conjunto limitado das funções de membro do contêiner da sequência como uma interface pública.

Os objetos da pilha são igualdade comparável se e somente se os elementos da classe Tipo são igualdade comparável e são comparáveis menor que se e somente se os elementos da classe Tipo menor que são comparáveis.

  • A classe da pilha da suporte à última a entrar, primeiro a sair estrutura de dados (LIFO). Um bom analogue a considerar seria uma pilha de espaços em branco. Os elementos em branco () podem ser inseridos, inspecionado, ou descartado apenas a parte superior da pilha, que é o elemento mais recente na extremidade do contêiner de base. A restrição a acessar apenas o elemento superior é a razão para usar a classe de pilha.

  • Oferece suporte à classe de fila (primeiro a entrar, primeiro a sair estrutura de dados (FIFO). Um bom analogue a considerar seria pessoa que alinhe para um banco de caixa. Os elementos () pessoas podem ser adicionados à parte da linha e são removidos da frente da linha. A frente e para somente de uma linha podem ser inspecionadas. A restrição a acessar os elementos somente da frente e do backup é dessa forma a capa da razão usando a classe da fila.

  • classe de priority_queue ordenação dos elementos de forma que o elemento superior estão sempre na posição superior. Oferece suporte à inserção de um elemento e a inspeção e a remoção do elemento superior. Um bom analogue a considerar seria pessoa que alinhe em que são organizados por idade, pela altura ou, por algum outro critério.

Construtores

pilha

Constrói stack que estiver vazia ou que é uma cópia de um objeto contêiner de base.

Typedefs

container_type

Um tipo que fornece o contêiner de base a ser adaptado por stack.

size_type

Um tipo de número inteiro sem sinal que pode representar o número de elementos em stack.

tipo de valor

Um tipo que representa o tipo de objeto armazenada como um elemento em stack.

Funções de membro

vazio

Testa se stack está vazia.

pop

Remove o elemento da parte superior de stack.

envio

Adiciona um elemento a parte superior de stack.

size

Retorna o número de elementos em stack.

top

Retorna uma referência a um elemento na parte superior de stack.

Requisitos

Pilha <deHeader: >

Namespace: std

Consulte também

Referência

Segurança de threads na Biblioteca Padrão C++

Biblioteca de Modelos Padrão

Outros recursos

os membros da pilha

<stack> Membros