Поделиться через


basic_ifstream::basic_ifstream

Создает объект типа basic_ifstream.

basic_ifstream( );
explicit basic_ifstream(
    const char *_Filename,
    ios_base::openmode _Mode = ios_base::in,
    int _Prot = (int)ios_base::_Openprot
);
explicit basic_ifstream(
    const wchar_t *_Filename,
    ios_base::openmode _Mode = ios_base::in,
    int _Prot = (int)ios_base::_Openprot
);
basic_ifstream(basic_ifstream&& right);

Параметры

  • _Filename
    Имя файла, который необходимо открыть.

  • _Mode
    Одно из перечислений в ios_base::openmode.

  • _Prot
    Защита от открытия файла по умолчанию, соответствующее параметру shflag в _fsopen, _wfsopen.

Заметки

Первый конструктор инициализирует базовый класс путем вызова basic_istream(sb), где sb сохраненный объект класса basic_filebuf<Elem, Tr>. Он также инициализирует sb путем вызова basic_filebuf<Elem, Tr>.

Второй и третий конструкторы инициализируют базового класса путем вызова basic_istream(sb). Он также инициализирует sb путем вызова basic_filebuf<Elem, Tr>, затем sb.open(_Filename, _Mode | ios_base::in). Если последняя функция возвращает указатель, вызовы конструктора setstate(failbit).

Четвертый конструктор инициализирует объект с содержимое right, может использоваться в качестве ссылки rvalue.

Пример

В следующем примере показан способ чтения в текст из файла. Для создания файла см. в примере для basic_ofstream::basic_ofstream.

// basic_ifstream_ctor.cpp
// compile with: /EHsc

#include <fstream>
#include <iostream>

using namespace std;

int main(int argc, char **argv)
{
    ifstream ifs("basic_ifstream_ctor.txt");
    if (!ifs.bad())
    {
        // Dump the contents of the file to cout.
        cout << ifs.rdbuf();
        ifs.close();
    }
}

Входные данные: basic_ifstream_ctor.txt

This is the contents of basic_ifstream_ctor.txt.

Output

This is the contents of basic_ifstream_ctor.txt.

Требования

Заголовок:<fstream>

Пространство имен: std

См. также

Ссылки

Класс basic_ifstream

Программирование iostream

Соглашения iostreams