如何正确实例化一个类?

时间:2014-03-14 13:41:39

标签: c++ atl

我正在尝试实施ATL:

std::list<CMyClass> listMC;
CMyClass lmc;
listMC.insert(listMC.end(), lmc);

如何实例化lmc哪个是使用Class View > New > Class创建的ATL类?

我实际上在lmc上收到了错误:

Error: object of abstract class type "CProcessusModel" is not allowed :
function "CProcessusModel::AddRef" is a virtual function 
function "CProcessusModel::Release" is a virtual function  
function "CProcessusModel::QueryInterface" is a virtual function

非常感谢!

1 个答案:

答案 0 :(得分:2)

根据您的错误消息,类CProcessusModel是抽象的。你无法实例化抽象类。

要使你的课具体,你必须

A)实现类CProcessusModel

中的错误消息中列出的虚函数

B)从抽象CProcessusModel派生一个具体的子类,它实现所有纯虚方法并实例化该类型的对象。