std:: basic_ios
|
Определено в заголовочном файле
<ios>
|
||
|
template
<
class
CharT,
|
||
Класс
std::basic_ios
предоставляет средства для взаимодействия с объектами, имеющими
std::basic_streambuf
интерфейс. Несколько
std::basic_ios
объектов могут ссылаться на один фактический
std::basic_streambuf
объект.
Диаграмма наследования
Предоставлены несколько typedef для распространённых символьных типов:
|
Определено в заголовке
<ios>
|
|
| Тип | Определение |
std::ios
|
std :: basic_ios < char > |
std::wios
|
std :: basic_ios < wchar_t > |
Содержание |
Типы членов
| Тип члена | Определение |
char_type
|
CharT
|
traits_type
|
Traits
; программа некорректна, если
Traits::char_type
не является
CharT
.
|
int_type
|
Traits::int_type
|
pos_type
|
Traits::pos_type
|
off_type
|
Traits::off_type
|
Публичные функции-члены
|
конструирует объект
(public member function) |
|
|
[virtual]
|
уничтожает объект
(virtual public member function) |
|
operator=
|
оператор присваивания копированием удалён
(public member function) |
Функции состояния |
|
|
проверяет, что не произошло ошибок, т.е. операции ввода-вывода доступны
(public member function) |
|
|
проверяет, достигнут ли конец файла
(public member function) |
|
|
проверяет, произошла ли ошибка
(public member function) |
|
|
проверяет, произошла ли неустранимая ошибка
(public member function) |
|
|
проверяет, произошла ли ошибка (синоним
fail()
)
(public member function) |
|
проверяет, что не произошло ошибок (синоним
!
fail()
)
(public member function) |
|
|
возвращает флаги состояния
(public member function) |
|
|
устанавливает флаги состояния
(public member function) |
|
|
изменяет флаги состояния
(public member function) |
|
Форматирование |
|
|
копирует информацию о форматировании
(public member function) |
|
|
управляет символом-заполнителем
(public member function) |
|
Разное |
|
|
управляет маской исключений
(public member function) |
|
|
устанавливает локаль
(public member function) |
|
|
управляет связанным буфером потока
(public member function) |
|
|
управляет связанным потоком
(public member function) |
|
|
сужает символы
(public member function) |
|
|
расширяет символы
(public member function) |
|
Защищённые функции-члены
|
инициализирует объект
std::basic_ios
, созданный конструктором по умолчанию
(защищённая функция-член) |
|
|
(C++11)
|
перемещает из другого объекта
std::basic_ios
, за исключением
rdbuf
(защищённая функция-член) |
|
(C++11)
|
обменивается с другим объектом
std::basic_ios
, за исключением
rdbuf
(защищённая функция-член) |
заменяет
rdbuf
без очистки его состояния ошибки
(защищённая функция-член) |
Унаследовано от std:: ios_base
Функции-члены
Форматирование |
|
|
управляет флагами формата
(публичная функция-член
std::ios_base
)
|
|
|
устанавливает определённый флаг формата
(публичная функция-член
std::ios_base
)
|
|
|
сбрасывает определённый флаг формата
(публичная функция-член
std::ios_base
)
|
|
|
управляет точностью десятичных дробей в операциях с плавающей точкой
(публичная функция-член
std::ios_base
)
|
|
|
управляет шириной поля
(публичная функция-член
std::ios_base
)
|
|
Локали |
|
|
устанавливает локаль
(публичная функция-член
std::ios_base
)
|
|
|
возвращает текущую локаль
(публичная функция-член
std::ios_base
)
|
|
Внутренний расширяемый массив |
|
|
[static]
|
возвращает уникальное для программы целое число, безопасное для использования в качестве индекса для
pword()
и
iword()
(публичная статическая функция-член
std::ios_base
)
|
|
изменяет размер приватного хранилища при необходимости и предоставляет доступ к элементу
long
по заданному индексу
(публичная функция-член
std::ios_base
)
|
|
|
изменяет размер приватного хранилища при необходимости и предоставляет доступ к элементу
void
*
по заданному индексу
(публичная функция-член
std::ios_base
)
|
|
Прочее |
|
|
регистрирует функцию обратного вызова событий
(публичная функция-член
std::ios_base
)
|
|
|
[static]
|
устанавливает, являются ли библиотеки ввода-вывода C++ и C взаимно совместимыми
(публичная статическая функция-член
std::ios_base
)
|
Классы-члены |
|
|
исключение потока
(публичный класс-член
std::ios_base
)
|
|
|
инициализирует объекты стандартных потоков
(публичный класс-член
std::ios_base
)
|
|
Типы членов и константы |
|||||||||||||||||||||||||||||||||||||||
| Тип | Объяснение | ||||||||||||||||||||||||||||||||||||||
|
тип режима открытия потока
Также определены следующие константы:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
тип флагов форматирования
Также определены следующие константы:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
тип состояния потока
Также определены следующие константы:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
тип направления позиционирования
Также определены следующие константы:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
определяет тип события
(enum) |
|||||||||||||||||||||||||||||||||||||||
|
тип функции обратного вызова
(typedef) |
|||||||||||||||||||||||||||||||||||||||
Примечания
Прямая реализация
std::basic_ios
хранит только следующие члены (которые все зависят от параметров шаблона и поэтому не могут быть частью
std::ios_base
):
-
символ заполнения (см.
fill()) -
указатель на связанный поток (см.
tie()) -
указатель на связанный буфер потока (см.
rdbuf()).
Фактические реализации различаются:
Microsoft Visual Studio сохраняет только эти три члена.
LLVM libc++ хранит на 1 член меньше: он поддерживает указатель
rdbuf
как член
void
*
в
ios_base
.
GNU libstdc++ хранит 4 дополнительных члена: три кэшированных фацета и флаг, указывающий, что fill был инициализирован.