gpt4 book ai didi

c++ - 传递 fstream 作为结构体成员

转载 作者:太空宇宙 更新时间:2023-11-04 15:41:02 25 4
gpt4 key购买 nike

我有以下结构,

struct option
{
std::fstream fpointer;
char* clifn;
};

我想将此结构作为参数传递给另一个函数(另一种方法是将单个元素和 fpointer 作为引用传递),将其传递给函数会引发编译器错误

error C2248: 'std::basic_fstream<_Elem,_Traits>::basic_fstream' : cannot access private member declared in class 'std::basic_fstream<_Elem,_Traits>'

有没有办法将结构成员的 std::fstream 对象传递给函数。

最佳答案

Streams are not copyable因此 struct option 是不可复制的,因为它有一个不可复制的成员 (fpointer)。通过引用传递 struct option 以避免复制:

void some_function(option& a_option)
{
}

关于c++ - 传递 fstream 作为结构体成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23080060/

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