Difference between revisions of "cpp/io/basic istream"
Andreas Krug (Talk | contribs) m (fmt) |
|||
(12 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{cpp/title|basic_istream}} | {{cpp/title|basic_istream}} | ||
− | {{cpp/io/basic_istream/ | + | {{cpp/io/basic_istream/navbar}} |
− | {{ddcl | header=istream | | + | {{ddcl|header=istream|1= |
template< | template< | ||
class CharT, | class CharT, | ||
− | class Traits | + | class Traits = std::char_traits<CharT> |
> class basic_istream : virtual public std::basic_ios<CharT, Traits> | > class basic_istream : virtual public std::basic_ios<CharT, Traits> | ||
}} | }} | ||
− | The class template {{tt|basic_istream}} provides support for high level input operations on character streams. The supported operations include formatted input (e.g. integer values or whitespace-separated characters and characters strings) and unformatted input (e.g. raw characters and character arrays). This functionality is implemented in terms of the interface provided by the underlying {{tt|basic_streambuf}} class, accessed through the {{tt|basic_ios}} base class. The only non-inherited data member of {{tt|basic_istream}}, in most implementations, is the value returned by {{ | + | The class template {{tt|basic_istream}} provides support for high level input operations on character streams. The supported operations include formatted input (e.g. integer values or whitespace-separated characters and characters strings) and unformatted input (e.g. raw characters and character arrays). This functionality is implemented in terms of the interface provided by the underlying {{tt|basic_streambuf}} class, accessed through the {{tt|basic_ios}} base class. The only non-inherited data member of {{tt|basic_istream}}, in most implementations, is the value returned by {{l2tf|cpp/io/basic_istream/gcount}}. |
− | {{inheritance diagram | + | {{inheritance diagram/std-basic_istream}} |
− | + | ||
− | + | ||
− | }} | + | |
− | + | ||
− | + | ||
− | {{ | + | {{cpp/basic char typedefs|istream}} |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
===Global objects=== | ===Global objects=== | ||
Two global basic_istream objects are provided by the standard library. | Two global basic_istream objects are provided by the standard library. | ||
− | {{ | + | {{dsc begin}} |
− | {{ | + | {{dsc header|iostream}} |
− | {{ | + | {{dsc inc|cpp/io/dsc cin}} |
− | {{ | + | {{dsc end}} |
− | + | {{cpp/io/member types}} | |
− | {{ | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
===Member functions=== | ===Member functions=== | ||
− | {{ | + | {{dsc begin}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc constructor}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc destructor}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc operator{{=}}}} |
− | {{ | + | {{dsc h2|Formatted input}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc operator_gtgt}} |
− | {{ | + | {{dsc h2|Unformatted input}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc get}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc peek}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc unget}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc putback}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc getline}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc ignore}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc read}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc readsome}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc gcount}} |
− | {{ | + | {{dsc h2|Positioning}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc tellg}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc seekg}} |
− | {{ | + | {{dsc h2|Miscellaneous}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc sync}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc swap}} |
− | {{ | + | {{dsc end}} |
===Member classes=== | ===Member classes=== | ||
− | {{ | + | {{dsc begin}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc sentry}} |
− | {{ | + | {{dsc end}} |
===Non-member functions=== | ===Non-member functions=== | ||
− | {{ | + | {{dsc begin}} |
− | {{ | + | {{dsc inc|cpp/io/basic_istream/dsc operator_gtgt2}} |
− | {{ | + | {{dsc end}} |
{{cpp/io/basic_ios/inherit}} | {{cpp/io/basic_ios/inherit}} | ||
{{cpp/io/ios_base/inherit}} | {{cpp/io/ios_base/inherit}} | ||
+ | |||
+ | {{langlinks|de|es|fr|it|ja|pt|ru|zh}} |
Latest revision as of 01:00, 7 December 2023
Defined in header <istream>
|
||
template< class CharT, |
||
The class template basic_istream
provides support for high level input operations on character streams. The supported operations include formatted input (e.g. integer values or whitespace-separated characters and characters strings) and unformatted input (e.g. raw characters and character arrays). This functionality is implemented in terms of the interface provided by the underlying basic_streambuf
class, accessed through the basic_ios
base class. The only non-inherited data member of basic_istream
, in most implementations, is the value returned by basic_istream::gcount().
Inheritance diagram
Several typedefs for common character types are provided:
Defined in header
<istream> | |
Type | Definition |
std::istream
|
std::basic_istream<char> |
std::wistream
|
std::basic_istream<wchar_t> |
Contents |
[edit] Global objects
Two global basic_istream objects are provided by the standard library.
Defined in header
<iostream> | |
reads from the standard C input stream stdin (global object) |
[edit] 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
|
[edit] Member functions
constructs the object (public member function) | |
[virtual] |
destructs the object (virtual public member function) |
(C++11) |
move-assigns from another basic_istream (protected member function) |
Formatted input | |
extracts formatted data (public member function) | |
Unformatted input | |
extracts characters (public member function) | |
reads the next character without extracting it (public member function) | |
unextracts a character (public member function) | |
puts a character into input stream (public member function) | |
extracts characters until the given character is found (public member function) | |
extracts and discards characters until the given character is found (public member function) | |
extracts blocks of characters (public member function) | |
extracts already available blocks of characters (public member function) | |
returns number of characters extracted by last unformatted input operation (public member function) | |
Positioning | |
returns the input position indicator (public member function) | |
sets the input position indicator (public member function) | |
Miscellaneous | |
synchronizes with the underlying storage device (public member function) | |
(C++11) |
swaps stream objects, except for the associated buffer (protected member function) |
[edit] Member classes
implements basic logic for preparation of the stream for input operations (public member class) |
[edit] Non-member functions
extracts characters and character arrays (function template) |
Inherited from std::basic_ios
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
|
Member functions
State functions | |
checks if no error has occurred i.e. I/O operations are available (public member function of std::basic_ios<CharT,Traits> )
| |
checks if end-of-file has been reached (public member function of std::basic_ios<CharT,Traits> )
| |
checks if an error has occurred (public member function of std::basic_ios<CharT,Traits> )
| |
checks if a non-recoverable error has occurred (public member function of std::basic_ios<CharT,Traits> )
| |
checks if an error has occurred (synonym of fail()) (public member function of std::basic_ios<CharT,Traits> )
| |
checks if no error has occurred (synonym of ! fail()) (public member function of std::basic_ios<CharT,Traits> )
| |
returns state flags (public member function of std::basic_ios<CharT,Traits> )
| |
sets state flags (public member function of std::basic_ios<CharT,Traits> )
| |
modifies state flags (public member function of std::basic_ios<CharT,Traits> )
| |
Formatting | |
copies formatting information (public member function of std::basic_ios<CharT,Traits> )
| |
manages the fill character (public member function of std::basic_ios<CharT,Traits> )
| |
Miscellaneous | |
manages exception mask (public member function of std::basic_ios<CharT,Traits> )
| |
sets the locale (public member function of std::basic_ios<CharT,Traits> )
| |
manages associated stream buffer (public member function of std::basic_ios<CharT,Traits> )
| |
manages tied stream (public member function of std::basic_ios<CharT,Traits> )
| |
narrows characters (public member function of std::basic_ios<CharT,Traits> )
| |
widens characters (public member function of std::basic_ios<CharT,Traits> )
|
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) |