【发布时间】:2011-07-31 22:08:51
【问题描述】:
假设我有以下抽象类并将其用作 C++ 中的“接口”:
class IDemo
{
public:
virtual ~IDemo() {}
virtual void Start() = 0;
};
class MyDemo : IDemo
{
public:
virtual void start()
{
//do stuff
}
};
然后在需要有接口句柄的类中(通过注入的具体类):
class Project
{
public:
Project(IDemo demo);
private:
IDemo *_demo;
};
我的意图是通过 Project 的构造函数来分配具体的 Demo 类。此代码无法编译,因为 IDemo 无法实例化。有什么建议? 提前致谢。
【问题讨论】:
标签: c++ interface dependency-injection abstract-class