【发布时间】:2014-03-21 10:43:33
【问题描述】:
我有这个 c++ 类,我想初始化这个类型的对象:
class MyClass
{
public:
/**
* Creates an instance of this class.
* @return Pointer to the created object.
*/
static MyClass * Create ();
protected:
// Explicit protected Constructor
//and Copy-Constructor, use Create() to create an instance of this object.
MyClass();
}
为了创建一个实例,我这样做了:
static MyClass * m_object = myClass.Create();
但我收到了这些警告和错误:
warning C4832: token '.' is illegal after UDT 'MyClass'
error C2275: 'MyClass' : illegal use of this type as an expression
error C2228: left of '.Create' must have class/struct/union
如何正确实例化这个对象?
【问题讨论】:
-
myClass定义在哪里? -
这是一个 3D 图形库,该类与我的定义在不同的命名空间中。这 ;已经存在于课程末尾但忘记在此处复制。
标签: c++ visual-studio-2010 instantiation static-constructor