std::basic_ios
|
|
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
<metanoindex/>
<tbody> </tbody>| Определено в заголовочном файле <ios>
|
||
template< class CharT, class Traits = std::char_traits<CharT> > class basic_ios : public std::ios_base; |
||
Класс basic_ios предоставляет средства для взаимодействия с объектами, которые имеют интерфейс basic_streambuf. Несколько объектов basic_ios могут относиться к одному реальному объекту basic_streambuf.
Диаграмма наследования
Также определяются две специализации для распространенных типов символов:
| Тип | Определение |
std::ios
|
basic_ios<char>
|
std::wios
|
basic_ios<wchar_t>
|
Типы-члены
| Тип | Определение |
char_type
|
CharT
|
traits_type
|
Traits
|
int_type
|
Traits::int_type
|
pos_type
|
Traits::pos_type
|
off_type
|
Traits::off_type
|
Публичные функции-члены
| создает объект (public функция-элемент) | |
| уничтожает объект (public функция-элемент) | |
operator= |
оператор копирующего присваивания удален (public функция-элемент) |
Функции состояния | |
| проверяет отсутствие ошибок, т.е. доступны ли операции ввода/вывода (public функция-элемент) | |
| проверяет, достигнут ли конец файла (public функция-элемент) | |
| проверяет, произошла ли устранимая ошибка (public функция-элемент) | |
проверяет, произошла ли неустранимая ошибка Оригинал: checks if a non-recoverable error has occurred Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент) | |
| проверяет, произошла ли ошибка (синоним std::basic_ios::fail) (public функция-элемент) | |
(до C++11)(начиная с C++11) |
проверяет отсутствие ошибок (синоним !fail()) (public функция-элемент) |
| возвращает флаги состояния (public функция-элемент) | |
| устанавливает флаги состояния (public функция-элемент) | |
| очищает флаги ошибок и конца файла (public функция-элемент) | |
Форматирование | |
| копирует информацию о форматировании (public функция-элемент) | |
| управляет символом заполнения (public функция-элемент) | |
Прочее | |
| управляет маской исключений (public функция-элемент) | |
| устанавливает языковой стандарт (public функция-элемент) | |
| управляет буфером связанного потока (public функция-элемент) | |
| управляет связанными потоком (public функция-элемент) | |
| конвертирует символ в символ меньшей ширины (public функция-элемент) | |
| конвертирует символ в символ большей ширины (public функция-элемент) | |
Защищенные функции-члены
инициализирует созданный по умолчанию std::basic_ios (protected функция-элемент) | |
перемещает переменные-члены из другого std::basic_ios за исключением rdbuf (protected функция-элемент) | |
обменивает переменные-члены с другим std::basic_ios за исключением rdbuf (protected функция-элемент) | |
заменяет буфер rdbuf, не очищая его состояние ошибок (protected функция-элемент) |
Унаследован от std::ios_base
Функции-члены
Форматирование | |
| управляет флагами форматирования (public функция-элемент std::ios_base)
| |
| устанавливает заданные флаги форматирования (public функция-элемент std::ios_base)
| |
| сбрасывает заданные флаги форматирования (public функция-элемент std::ios_base)
| |
| управляет десятичной точностью операций над числами с плавающей запятой (public функция-элемент std::ios_base)
| |
| управляет символьной шириной полей (public функция-элемент std::ios_base)
| |
Языковой стандарт | |
| устанавливает языковой стандарт (public функция-элемент std::ios_base)
| |
| возвращает текущий языковой стандарт (public функция-элемент std::ios_base)
| |
Внутренний расширяемый массив | |
[static] |
возвращает уникальное в масштабах программы целое число, которое является безопасным для использования в качестве индекса для pword() и iword() (public static функция-элемент std::ios_base)
|
при необходимости изменяет размер закрытого хранилища и предоставляет доступ к элементу типа long по заданному индексу (public функция-элемент std::ios_base)
| |
при необходимости изменяет размер закрытого хранилища и предоставляет доступ к элементу типа void* по заданному индексу (public функция-элемент std::ios_base)
| |
Прочее | |
| регистрирует функцию обратного вызова на событие (public функция-элемент std::ios_base)
| |
[static] |
устанавливает, являются ли библиотеки ввода-вывода C и C++ функционально совместимыми (public static функция-элемент std::ios_base)
|
Переменные-члены
Поток исключение Оригинал: stream exception Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public элемент класса std::ios_base)
| |
инициализирует стандартные объекты потока Оригинал: initializes standard stream objects Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public элемент класса std::ios_base)
|
Типы-члены и константы-члены
| Тип | Описание | ||||||||||||||||||||||||||||||||||||||||
| тип режим открытия потока
Также определены следующие константы:
(определение типа) | |||||||||||||||||||||||||||||||||||||||||
| тип флагов форматирования
Также определены следующие константы:
(определение типа) | |||||||||||||||||||||||||||||||||||||||||
| тип состояния потока
Также определены следующие константы:
(определение типа) | |||||||||||||||||||||||||||||||||||||||||
| тип направления поиска
Также определены следующие константы:
(определение типа) | |||||||||||||||||||||||||||||||||||||||||
| тип события (перечисление) | |||||||||||||||||||||||||||||||||||||||||
| тип функции обратного вызова (определение типа) | |||||||||||||||||||||||||||||||||||||||||
Замечания
Простейшая реализация std::basic_ios содержит только следующие переменные-члены (все они зависят от параметров шаблона и потому не могут быть частью std::ios_base):
- символ заполнения (см. fill());
- указатель на связанный поток (см. tie());
- указатель на буфер связанного потока (см. rdbuf()).
Текущие реализации различаются:
Реализация Microsoft Visual Studio STL содержит только эти три члена.
Реализация LLVM libc++ содержит на один член меньше: она хранит указатель rdbuf как в классе void*ios_base.
Реализация GNU libstdc++ содержит четыре дополнительных члена: три кэшированных фасета текущего языкового стандарта и флаг проверки, что символ заполнения был инициализирован.