Defined in header <ios> | ||
---|---|---|
template< class CharT, class Traits = std::char_traits<CharT> > class basic_ios : public ios_base |
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
object.
Inheritance diagram.
Two specializations for common character types are also provided:
Type | Definition |
---|---|
ios | basic_ios<char> |
wios | basic_ios<wchar_t> |
Member types
Member type | Definition |
---|---|
char_type | CharT |
traits_type | Traits |
int_type | Traits::int_type |
pos_type | Traits::pos_type |
off_type | Traits::off_type |
Public member functions
constructs the object (public member function) | |
(destructor)
[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 a recoverable error has occurred (public member function) | |
checks if a non-recoverable error has occurred (public member function) | |
operator!
| checks if an error has occurred (synonym of fail() ) (public member function) |
(until C++11)(since C++11) | checks if no error has occurred (synonym of !fail() ) (public member function) |
returns state flags (public member function) | |
sets state flags (public member function) | |
clears error and eof 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 IO 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.
Please login to continue.