gpt4 book ai didi

c++ - 关于ifstream : error ‘std::ios_base::ios_base(const std::ios_base&)’ is private

转载 作者:行者123 更新时间:2023-11-28 06:01:47 26 4
gpt4 key购买 nike

当我尝试执行以下操作时,标题中出现错误。

class Test
{
private:
std::ifstream File;


public:
Test();

};

测试::测试() {}

我知道堆栈上有很多关于这个问题的线程。我知道我可以通过简单的方式解决我的问题

std::ifstream *File;

我发布这个问题的原因是因为我的导师告诉我,我应该能够在不修改我发布的第一个代码块的情况下做到这一点。我已经对此进行了研究,但没有发现任何可以证明我可以做到的事情。有什么想法吗?

根据要求。

class Test
{
private:
std::ifstream File;


public:
Test();
};

Test::Test() {}

int main()
{
Test test = Test();
return 0;
}

这是我无法编译的示例。

最佳答案

线

Test test = Test();

是一个问题,因为 std::ifstream 没有复制构造函数或复制赋值运算符。使用:

Test test;

如果您有 C++11 编译器,您还可以使用:

Test test{};

关于c++ - 关于ifstream : error ‘std::ios_base::ios_base(const std::ios_base&)’ is private,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33140401/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com