这是我的课:
class Files{
private:
string fileName;
bool fileOpen;
ofstream fObj1;
public:
Files();
Files(const string&);
~Files();
const bool fOpen() const{return fileOpen;}
};
我得到的错误:
e:\visual studio 2012ulti\devprojects\oop344 prep\simpleencryption\simpleencryption\files.h(19): error C2248: 'std::basic_ofstream<_Elem,_Traits>::operator =' : cannot access private member declared in class 'std::basic_ofstream<_Elem,_Traits>'
我试图让ofstream
对象fObj1
成为 Files 类的私有成员,以便我可以在类实例的整个生命周期中对其进行操作而不会fObj1
超出范围。
如果我创建fObj1
一个公共成员,代码就会编译。作为私人会员有问题吗?