◐ Shell
clean mode source ↗

std::ios_base — cppreference.com

Материал из cppreference.com

<tbody> </tbody>

Определено в заголовочном файле <ios>

class ios_base;

Класс ios_base — это многофункциональный класс, который служит в качестве базового класса для всех классов потока ввода-вывода. Он содержит несколько видов данных:

1) информация о состоянии: флаги статуса потока;

2) информация об управлении: флаги, которые управляют форматированием входных и выходных последовательностей и используемом языковом стандарте;

3) частные хранилища: индексированные расширяемые структуры данных, которые позволяют хранить данные типов long и void* и могут быть реализованы в виде двух массивов произвольной длины, или одного массива структур из двух элементов, или другой контейнер;

4) функции обратного вызова: произвольное число определяемых пользователем функций, которые будут вызываться из imbue(), copyfmt() и ~ios_base().

Типичная реализация содержит константы, соответствующие всем значениям fmtflags, iostate, openmode и seekdir, которые указаны ниже, и переменные для хранения текущей точности, ширины и флагов форматирования, маски исключений, состояния ошибок буфера, контейнера переменного размера с функциями обратного вызова, используемого в настоящий момент языкового стандарта, частного хранилища и статической целочисленной переменной для xalloc().

Функции-члены

создает объект
(protected функция-элемент) [править]
уничтожает объект
(virtual public функция-элемент) [править]
Форматирование
управляет флагами форматирования
(public функция-элемент) [править]
устанавливает заданные флаги форматирования
(public функция-элемент) [править]
сбрасывает заданные флаги форматирования
(public функция-элемент) [править]
управляет десятичной точностью операций над числами с плавающей запятой
(public функция-элемент) [править]
управляет символьной шириной полей
(public функция-элемент) [править]
Языковой стандарт
устанавливает языковой стандарт
(public функция-элемент) [править]
возвращает текущий языковой стандарт
(public функция-элемент) [править]
Внутренний расширяемый массив

[static]

возвращает уникальное в масштабах программы целое число, которое является безопасным для использования в качестве индекса для pword() и iword()
(public static функция-элемент) [править]
при необходимости изменяет размер закрытого хранилища и предоставляет доступ к элементу типа long по заданному индексу
(public функция-элемент) [править]
при необходимости изменяет размер закрытого хранилища и предоставляет доступ к элементу типа void* по заданному индексу
(public функция-элемент) [править]
Прочее
регистрирует функцию обратного вызова на событие
(public функция-элемент) [править]
устанавливает, являются ли библиотеки ввода-вывода C и C++ функционально совместимыми
(public static функция-элемент) [править]

Переменные-члены

Поток исключение

Оригинал:

stream exception

Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.


(public элемент класса) [править]

инициализирует стандартные объекты потока

Оригинал:

initializes standard stream objects

Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.


(public элемент класса) [править]

Типы-члены и константы-члены

Устаревшие типы-члены
Тип Описание
io_state (устарело) целочисленный тип, который может быть использован как iostate
open_mode (устарело) целочисленный тип, который может быть использован как openmode
seek_dir (устарело) целочисленный тип, который может быть использован как seekdir
streamoff (устарело) неуточненный тип, который может быть использован как off_type, не обязательно std::streamoff
streampos (устарело) неуточненный тип, который может быть использован как pos_type, не обязательно std::streampos
(до C++17)

Отчет об ошибках

Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:

Номер Применён Поведение в стандарте Корректное поведение
LWG 1357 C++98 определенные в std::ios_base операторы operator~,
operator& и operator| для типов openmode, fmtflags
и iostate нарушают требования типа BitmaskType[1]
определения удалены
  1. Тип BitmaskType должен сам поддерживать битовые операции. Поддержка битовых операций не должна быть предоставлена внешними средствами.

См. также