c++ - 如何在类构造函数中初始化 ifstream 对象?

标签 c++

我知道我可以初始化 ifstream 类型的对象,如下所示: std::ifstream ifs("test.txt", std::ifstream::in);

但是假设我有一个类需要将 ifstream 对象作为该类的成员:

class A
{
private:
std::ifstream file;
}

我应该如何在类的构造函数中初始化这个对象?

最佳答案

添加带有初始值设定项列表的构造函数:

class A
{
    private:
        std::ifstream file;

    public:
        A()
        : file("test.txt", std::ifstream::in)
        {
        }
};

关于c++ - 如何在类构造函数中初始化 ifstream 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58423290/

相关文章:

c++ - 如何在 native C++ 单元测试 (Visual Studio) 中打开项目中的文件?

c++ - 当我使用一个既已在类外声明又在类内声明的名称时,它是未定义的行为还是非法的?

c++ - 如何在 Linux 中编译 ISPC 代码并将其与普通的 cpp 文件链接?

c++ - 使用 zlib 的 gzip 文件访问功能的未压缩文件大小

c++ - 使用 gdb 调试 - 最佳实践

c++ - 使用 GLUT 简单地打印文本

c++ - std::function 的开销

c++ - 从 lambda 内部调用函数返回

c++ - 具有可变类型容器的类模板

c++ - C++11 中的尾端迭代器失效