[C++]不可复制的类传参要传引用或指针
我遇到的错误是
error C2280: attempting to reference a deleted function
引用一个删除的函数。
像
ofstream`这种没有复制构造函数的不可复制的类传参要传引用或指针。
一般而言,对象的赋值构造函数如果开发者没有提供,则编译器会生成默认的赋值构造函数。然而,默认的赋值构造函数在以下几种情况会被删除:
该类含有非静态的const成员变量
该类含有非静态的reference成员变量
该类含有不能被拷贝的成员变量
该类含有不能被拷贝的基类
该类含有用户定义的移动构造函数或者移动赋值函数