在我正在开发的项目中,我有一个名为“Camera”的外部类,在这个类的内部,我正在实例化一个名为“帧”。 Frame类有这个在它的私有部分:在另一个类中调用一个类的特定构造函数
private:
// No default ctor
Frame();
// No copy ctor
Frame(Frame&);
// No assignment operator
Frame& operator=(const Frame&);
所以我得到一个错误,当我尝试实例化一个框架对象,因为默认的构造函数是私有的。在框架的公共部分,然而,有这样的:
public:
Frame(char *pBuffer, int bufferSize);
所以这是我需要从相机中实例化帧时调用构造函数。问题是我似乎无法弄清楚如何做到这一点。我不得不用相机类(其中默认的构造函数是private部分)同样的问题,但我不得不这样做,以解决这个问题是:
Camera::Camera():mCamera(whatever params here){
//constructor stuff here
}
在实现文件
。但是,当我尝试在Camera类中为Frame执行相同的操作时,出现大量错误。
那么我该如何从另一个对象的类中调用一个对象的特定构造函数呢?
您需要使用成员初始值设定项列表。 –
请显示[sscce](http://sscce.org/)。 – chris
[构造函数中这个奇怪的冒号成员语法是什么意思?]可能重复(http://stackoverflow.com/questions/1711990/what-is-this-weird-colon-member-syntax-in-the-constructor ) –