Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有这门课
class CamFeed { public: // constructor CamFeed(ofVideoGrabber &cam); ofVideoGrabber &cam; };
而这个构造函数:
CamFeed::CamFeed(ofVideoGrabber &cam) { this->cam = cam; }
我在构造函数上收到此错误: ''的构造函数必须显式初始化引用成员''
解决这个问题的好方法是什么?
您需要使用构造函数初始化列表:
CamFeed::CamFeed(ofVideoGrabber& cam) : cam(cam) {}
这是因为引用必须引用某些东西,因此不能默认构造。一旦进入构造函数主体,所有数据成员都已初始化。您的this->cam = cam;行实际上是一个分配,将所引用的值分配给所引用的cam任何内容this->cam。
this->cam = cam;
cam
this->cam