std::basic_ios<CharT,Traits>::init
protected: void init( std::basic_streambuf<CharT,Traits>* sb ); |
Устанавливает связанный буфер потока в значение sb и инициализирует внутреннее состояние.
Постусловия следующие:
| Элемент | Значение |
|---|---|
rdbuf() |
sb |
tie() | нулевой указатель |
rdstate() |
goodbit, если sb не является нулевым указателем, иначе badbit |
exceptions() |
goodbit |
flags() |
skipws | dec |
width() |
0 |
precision() |
6 |
fill() |
widen(' ') |
getloc() | копия значения, возвращаемого std::locale() |
Эта функция-член является защищённой: она вызывается конструкторами производных классов потоков std::basic_istream и std::basic_ostream после того, как становится известен связанный буфер потока. До вызова этой функции любая функция-член (включая деструктор) объекта std::basic_ios, созданного конструктором по умолчанию, приводит к неопределённому поведению. Обратите внимание, что basic_ios является виртуальным базовым классом, поэтому его конструктор не вызывается конструкторами этих непосредственно производных классов, что и обусловливает необходимость двухэтапной инициализации.
Параметры
| sb | - | буфер потока, с которым нужно связать |
См. также
| создаёт объект (функция-член общего доступа) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/io/basic_ios/init