std::basic_streambuf<CharT,Traits>:: pbump
| I/O manipulators | ||||
| Print functions (C++23) | ||||
| C-style I/O | ||||
| Buffers | ||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(C++20)
|
||||
| Streams | ||||
| Abstractions | ||||
| File I/O | ||||
| String I/O | ||||
| Array I/O | ||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
| Synchronized Output | ||||
|
(C++20)
|
||||
| Types | ||||
| Error category interface | ||||
|
(C++11)
|
||||
|
(C++11)
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
protected
:
void pbump ( int count ) ; |
||
Reposiciona el
puntero de escritura
(
pptr()
) en
count
caracteres, donde
count
puede ser positivo o negativo. No se realizan verificaciones al mover el puntero fuera del área de escritura
[
pbase
(
)
,
epptr
(
)
)
.
Si el puntero es avanzado y luego overflow() es llamado para vaciar el área de escritura hacia la secuencia de caracteres asociada, el efecto es que se emiten count caracteres adicionales con valores indefinidos.
Contenidos |
Parámetros
| count | - | número a añadir al puntero put |
Valor de retorno
(ninguno)
Notas
Debido a que esta función toma un int , no puede manipular búferes mayores que std:: numeric_limits < int > :: max ( ) caracteres ( LWG issue 255 ).
Ejemplo
#include <fstream> #include <iostream> #include <string> struct showput_streambuf : std::filebuf { using std::filebuf::pbump; // expose protected std::string showput() const { return std::string(pbase(), pptr()); } }; int main() { showput_streambuf mybuf; mybuf.open("test.txt", std::ios_base::out); std::ostream str(&mybuf); str << "This is a test" << std::flush << "1234"; std::cout << "The put area contains: " << mybuf.showput() << '\n'; mybuf.pbump(10); std::cout << "after pbump(10), it contains " << mybuf.showput() << '\n'; }
Salida:
The put area contains: 1234 after pbump(10), it contains 1234 is a test
Véase también
|
avanza el puntero siguiente en la secuencia de entrada
(función miembro protegida) |