I/O manipulators | ||||
Print functions(C++23) | ||||
C-style I/O | ||||
Buffers | ||||
(C++23) | ||||
(C++98/26*) | ||||
(C++20) | ||||
Streams | ||||
Abstractions | ||||
basic_ios | ||||
File I/O | ||||
String I/O | ||||
Array I/O | ||||
(C++23) | ||||
(C++23) | ||||
(C++23) | ||||
(C++98/26*) | ||||
(C++98/26*) | ||||
(C++98/26*) | ||||
Synchronized Output | ||||
(C++20) | ||||
Types | ||||
Error category interface | ||||
(C++11) | ||||
(C++11) |
Member functions | ||||
State functions | ||||
Formatting | ||||
Miscellaneous | ||||
Protected member functions | ||||
(C++11) | ||||
(C++11) | ||||
(C++11) |
Defined in header <ios> | ||
template< class CharT, | ||
The classstd::basic_ios
provides facilities for interfacing with objects that havestd::basic_streambuf interface. Severalstd::basic_ios
objects can refer to one actualstd::basic_streambuf
object.
Inheritance diagram
Several typedefs for common character types are provided:
Defined in header <ios> | |
Type | Definition |
std::ios | std::basic_ios<char> |
std::wios | std::basic_ios<wchar_t> |
Contents |
Member type | Definition |
char_type | CharT [edit] |
traits_type | Traits ; the program is ill-formed ifTraits::char_type is notCharT .[edit] |
int_type | Traits::int_type [edit] |
pos_type | Traits::pos_type [edit] |
off_type | Traits::off_type [edit] |
constructs the object (public member function)[edit] | |
[virtual] | destructs the object (virtual public member function)[edit] |
operator= | the copy assignment operator is deleted (public member function) |
State functions | |
checks if no error has occurred i.e. I/O operations are available (public member function)[edit] | |
checks if end-of-file has been reached (public member function)[edit] | |
checks if an error has occurred (public member function)[edit] | |
checks if a non-recoverable error has occurred (public member function)[edit] | |
checks if an error has occurred (synonym offail()) (public member function)[edit] | |
checks if no error has occurred (synonym of! fail())(public member function)[edit] | |
returns state flags (public member function)[edit] | |
sets state flags (public member function)[edit] | |
modifies state flags (public member function)[edit] | |
Formatting | |
copies formatting information (public member function)[edit] | |
manages the fill character (public member function)[edit] | |
Miscellaneous | |
manages exception mask (public member function)[edit] | |
sets the locale (public member function)[edit] | |
manages associated stream buffer (public member function)[edit] | |
manages tied stream (public member function)[edit] | |
narrows characters (public member function)[edit] | |
widens characters (public member function)[edit] |
initializes a default-constructedstd::basic_ios (protected member function)[edit] | |
(C++11) | moves from anotherstd::basic_ios except forrdbuf (protected member function)[edit] |
(C++11) | swaps with anotherstd::basic_ios except forrdbuf (protected member function)[edit] |
replaces therdbuf without clearing its error state(protected member function)[edit] |
Formatting | |
manages format flags (public member function of std::ios_base )[edit] | |
sets specific format flag (public member function of std::ios_base )[edit] | |
clears specific format flag (public member function of std::ios_base )[edit] | |
manages decimal precision of floating point operations (public member function of std::ios_base )[edit] | |
manages field width (public member function of std::ios_base )[edit] | |
Locales | |
sets locale (public member function of std::ios_base )[edit] | |
returns current locale (public member function of std::ios_base )[edit] | |
Internal extensible array | |
[static] | returns a program-wide unique integer that is safe to use as index topword() andiword() (public static member function of std::ios_base )[edit] |
resizes the private storage if necessary and access to thelong element at the given index (public member function of std::ios_base )[edit] | |
resizes the private storage if necessary and access to thevoid* element at the given index (public member function of std::ios_base )[edit] | |
Miscellaneous | |
registers event callback function (public member function of std::ios_base )[edit] | |
[static] | sets whether C++ and C I/O libraries are interoperable (public static member function of std::ios_base )[edit] |
Member classes | |
stream exception (public member class of std::ios_base )[edit] | |
initializes standard stream objects (public member class of std::ios_base )[edit] |
Member types and constants | |||||||||||||||||||||||||||||||||||||||
Type | Explanation | ||||||||||||||||||||||||||||||||||||||
stream open mode type The following constants are also defined:
(typedef)[edit] | |||||||||||||||||||||||||||||||||||||||
formatting flags type The following constants are also defined:
(typedef)[edit] | |||||||||||||||||||||||||||||||||||||||
state of the stream type The following constants are also defined:
(typedef)[edit] | |||||||||||||||||||||||||||||||||||||||
seeking direction type The following constants are also defined:
(typedef)[edit] | |||||||||||||||||||||||||||||||||||||||
specifies event type (enum)[edit] | |||||||||||||||||||||||||||||||||||||||
callback function type (typedef)[edit] |
Straightforward implementation ofstd::basic_ios
stores only the following members (which all depend on the template parameters and thus cannot be part ofstd::ios_base):
fill()
)tie()
)rdbuf()
).Actual implementations vary:
Microsoft Visual Studio stores just those three members.
LLVM libc++ stores 1 less member: it maintains therdbuf
pointer as avoid* member ofios_base
.
GNU libstdc++ stores 4 additional members: three cached facets and a flag to indicate that fill was initialized.