std::basic_streambuf::pubsetbuf, std::basic_streambuf::setbuf
Материал из cppreference.com
< cpp | io | basic streambuf
![]() | Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
basic_streambuf<CharT,Traits>* pubsetbuf( char_type* s, std::streamsize n ) | (1) | |
protected: virtual basic_streambuf<CharT,Traits>* setbuf( char_type* s, std::streamsize n ) | (2) | |
Звонки
2) setbuf(s, n)
из самых производного классаОригинал:
Calls
setbuf(s, n)
of the most derived classТекст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Версия базового класса этой функции не имеет никакого эффекта. Производные классы могут переопределить эту функцию, чтобы удаление или замена управляемой последовательности символов (буфер) с предоставленным пользователем массив, или по любой другой конкретной реализации целей.
Оригинал:
The base class version of this function has no effect. The derived classes may override this function to allow removal or replacement of the controlled character sequence (the buffer) with a user-provided array, or for any other implementation-specific purpose.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Содержание |
[править]Параметры
s | — | указатель на первый байт в предоставленное пользователем буфер Оригинал: pointer to the first byte in the user-provided buffer Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
n | — | количество байтов в предоставленное пользователем буфер Оригинал: the number of bytes in the user-provided buffer Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
[править]Возвращаемое значение
*this
[править]Пример
обеспечить 10k буфер для чтения. В Linux, утилита Трассирование может быть использован для наблюдения за фактическое количество прочитанных байтов
Оригинал:
provide a 10k buffer for reading. On linux, the strace utility may be used to observe the actual number of bytes read
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Запустить этот код
#include <fstream>#include <iostream>#include <string> int main(){int cnt=0;std::ifstream file;char buf[10241]; file.rdbuf()->pubsetbuf(buf, sizeof buf); file.open("/usr/share/dict/words");for(std::string line; getline(file, line);){ cnt++;} std::cout<< cnt <<'\n';}
[править]См. также
[virtual] | предоставляет пользователю поставляется буфера или превращает эту filebuf небуферизованных Оригинал: provides user-supplied buffer or turns this filebuf unbuffered Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (virtual protected std::basic_filebuf функция-элемент) |