std::basic_fstream::basic_fstream
From cppreference.com
< cpp | io | basic fstream
basic_fstream();
|
(1) | |
explicit basic_fstream( const char* filename,
ios_base::openmode mode = ios_base::in|ios_base::out ); |
(2) | |
explicit basic_fstream( const string& filename,
ios_base::openmode mode = ios_base::in|ios_base::out ); |
(3) | (since C++11) |
basic_fstream( basic_fstream&& other );
|
(4) | (since C++11) |
basic_fstream( const basic_fstream& rhs) = delete;
|
(5) | (since C++11) |
Constructs new file stream.
1) Default constructor: constructs a stream that is not associated with a file: default-constructs the std::basic_filebuf and constructs the base with the pointer to this default-constructed std::basic_filebuf member.
2) First, performs the same steps as the default constructor, then asssociates the stream with a file by calling rdbuf()->open(filename, mode).. If the open() call returns a null pointer, sets setstate(failbit).
3) Same as basic_fstream(filename.c_str(), mode).
4) Move constructor. First, move-constructs the base class from
other
(which does not affect the rdbuf()
pointer), then move-constructs the std::basic_filebuf member, then calls this->set_rdbuf() to install the new basic_filebuf
as the rdbuf() pointer in the base class.
5) The copy-constructor is deleted: this class is not copyable.
[edit] Parameters
filename | - | the name of the file to be opened | ||||||||||||||
mode | - | specifies stream open mode. It is bitmask type, the following constants are defined:
|
||||||||||||||
other | - | another file stream to use as source |
[edit] Example
Run this code
#include <fstream> #include <utility> #include <string> int main() { std::fstream f0; std::fstream f1("test.bin", std::ios::binary); std::string name = "example.txt"; std::fstream f2(name); std::fstream f3(std::move(f1)); }
[edit] See also
opens a file and associates it with the stream (public member function) |
|
opens a file and configures it as the associated character sequence (public member function of std::basic_filebuf )
|
|
replaces the rdbuf without clearing its error state (protected member function) |
|
constructs the object (public member function of std::basic_iostream )
|