std::basic_ios
Defined in header <ios>
|
||
|
template
<
class CharT, |
||
The class std::basic_ios provides facilities for interfacing with objects that have std::basic_streambuf interface. Several std::basic_ios objects can refer to one actual std::basic_streambuf
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> |
Member types
| Member type | Definition |
char_type
|
CharT |
traits_type
|
Traits; the program is ill-formed if Traits::char_type is not CharT. |
int_type
|
Traits::int_type |
pos_type
|
Traits::pos_type |
off_type
|
Traits::off_type |
Public member functions
| constructs the object (public member function) |
|
|
[virtual]
|
destructs the object (virtual public member function) |
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) |
|
| checks if end-of-file has been reached (public member function) |
|
| checks if an error has occurred (public member function) |
|
| checks if a non-recoverable error has occurred (public member function) |
|
| checks if an error has occurred (synonym of fail()) (public member function) |
|
checks if no error has occurred (synonym of !fail()) (public member function) |
|
| returns state flags (public member function) |
|
| sets state flags (public member function) |
|
| modifies state flags (public member function) |
|
Formatting | |
| copies formatting information (public member function) |
|
| manages the fill character (public member function) |
|
Miscellaneous | |
| manages exception mask (public member function) |
|
| sets the locale (public member function) |
|
| manages associated stream buffer (public member function) |
|
| manages tied stream (public member function) |
|
| narrows characters (public member function) |
|
| widens characters (public member function) |
|
Protected member functions
| initializes a default-constructed std::basic_ios (protected member function) |
|
|
(C++11)
|
moves from another std::basic_ios except for rdbuf (protected member function) |
|
(C++11)
|
swaps with another std::basic_ios except for rdbuf (protected member function) |
replaces the rdbuf without clearing its error state (protected member function) |
Inherited from std::ios_base
Member functions
Formatting | |
| manages format flags (public member function of std::ios_base) |
|
| sets specific format flag (public member function of std::ios_base) |
|
| clears specific format flag (public member function of std::ios_base) |
|
| manages decimal precision of floating point operations (public member function of std::ios_base) |
|
| manages field width (public member function of std::ios_base) |
|
Locales | |
| sets locale (public member function of std::ios_base) |
|
| returns current locale (public member function of std::ios_base) |
|
Internal extensible array | |
|
[static]
|
returns a program-wide unique integer that is safe to use as index to pword() and iword()
(public static member function of std::ios_base)
|
| resizes the private storage if necessary and access to the long element at the given index (public member function of std::ios_base)
|
|
| resizes the private storage if necessary and access to the void* element at the given index (public member function of std::ios_base)
|
|
Miscellaneous | |
| registers event callback function (public member function of std::ios_base) |
|
|
[static]
|
sets whether C++ and C I/O libraries are interoperable (public static member function of std::ios_base) |
Member classes | |
| stream exception (public member class of std::ios_base) |
|
| initializes standard stream objects (public member class of std::ios_base) |
|
Member types and constants | |||||||||||||||||||||||||||||||||||||||
| Type | Explanation | ||||||||||||||||||||||||||||||||||||||
| stream open mode type
The following constants are also defined:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
| formatting flags type
The following constants are also defined:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
| state of the stream type
The following constants are also defined:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
| seeking direction type
The following constants are also defined:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
| specifies event type (enum) |
|||||||||||||||||||||||||||||||||||||||
| callback function type (typedef) |
|||||||||||||||||||||||||||||||||||||||
Notes
Straightforward implementation of std::basic_ios stores only the following members (which all depend on the template parameters and thus cannot be part of std::ios_base
- the fill character (see
fill()) - the tied stream pointer (see
tie()) - the associated stream buffer pointer (see
rdbuf()).
Actual implementations vary:
Microsoft Visual Studio stores just those three members.
LLVM libc++ stores 1 less member: it maintains the rdbuf pointer as a void* member of ios_base.
GNU libstdc++ stores 4 additional members: three cached facets and a flag to indicate that fill was initialized.