Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Gerencia uma lista de blocos de memória.
Sintaxe
template <std::size_t Sz, class Max>
class freelist : public Max
Parâmetros
Sz
O número de elementos na matriz a ser alocado.
Máximo
A classe max que representa o número máximo de elementos a serem armazenados na lista livre. A classe máxima pode ser max_none, max_unbounded, max_fixed_size ou max_variable_size.
Observações
Este modelo de classe gerencia uma lista de blocos de memória de tamanho Sz com o comprimento máximo da lista determinado pela classe máxima passada em Max.
Construtores
| Construtor | Descrição |
|---|---|
| lista livre | Constrói um objeto do tipo freelist. |
Funções de membro
| Função de membro | Descrição |
|---|---|
| Pop | Remove o primeiro bloco de memória da lista livre. |
| empurrar | Adiciona um bloco de memória à lista. |
Requerimentos
Cabeçalho:<Alocadores>
Espaço de nomes: stdext
freelist::lista livre
Constrói um objeto do tipo freelist.
freelist();
freelist::p op
Remove o primeiro bloco de memória da lista livre.
void *pop();
Valor de retorno
Retorna um ponteiro para o bloco de memória removido da lista.
Observações
A função de membro retorna NULL se a lista estiver vazia. Caso contrário, ele remove o primeiro bloco de memória da lista.
freelist::p ush
Adiciona um bloco de memória à lista.
bool push(void* ptr);
Parâmetros
ptr
Um ponteiro para o bloco de memória a ser adicionado à lista livre.
Valor de retorno
true se a full função da classe max retorna false; caso contrário, a push função retorna false.
Observações
Se a full função da classe max retornar false, essa função de membro adicionará o bloco de memória apontado por ptr ao topo da lista.