Compartilhar via


basic_streambuf::underflow

Função protegida, virtual para extrair o elemento atual do fluxo de entrada.

virtual int_type underflow( );

Valor de retorno

o elemento atual.

Comentários

A função de membro virtual protegido esforça-se extrair o elemento atual ch de fluxo de entrada, sem avançar a posição atual de fluxo, e retorna a **traits_type::**comoto_int_typech().Pode fazer isso em várias maneiras:

  • Se uma posição de leitura está disponível, ch o elemento é armazenado na posição de leitura.Para obter mais informações sobre isso, consulte a seção comentários de basic_streambuf Class.

  • Pode fazer uma posição de leitura disponível atribuindo o novo ou adicional para o armazenamento buffer de entrada, lê em, de qualquer fonte externa, um ou mais elementos.Para obter mais informações sobre isso, consulte a seção comentários de basic_streambuf Class.

Se a função não obterá êxito, retorna traits_type::EOF() ou gera uma exceção.Caso contrário, retornará o elemento atual no fluxo de entrada, convertido como descrito anteriormente.O comportamento padrão é **traits_type::eof()**retornar.

a função virtual de underflow , com as funções de sincronização e de estouro , define as características de streambuf- classe derivada.Cada classe derivada pode implementar underflow diferente, mas a interface com a classe de fluxo de chamada é a mesma.

A função de underflow com mais freqüência é chamada por funções públicas de streambuf como sgetc e sgetn quando a área obter está vazia, mas outras classes, incluindo as classes de fluxo, podem chamar underflow a qualquer momento.

A função de underflow fornece a área obter com a fonte de caracteres de entrada.Se a área obter contém caracteres, underflow retorna o primeiro caractere.Se a área obter está vazia, preenche a área obter e retorna o próximo caractere (que deixa na área obter).Se não há mais caracteres disponível, então underflow retorna EOF e sai de obter a área vazia.

Em a classe de strstreambuf , underflow ajustar o ponteiro de egptr para o armazenamento de acesso que foi atribuído dinamicamente por uma chamada a overflow.

Requisitos

Cabeçalho: <streambuf>

namespace: STD

Consulte também

Referência

basic_streambuf Class

iostream de programação

Convenções de iostreams