C ++接口:用于接口/依赖注入的struct与class

时间:2018-01-11 23:51:23

标签: c++ class struct interface pure-virtual

关于依赖注入的blog。对于他们示例中的接口,他们使用struct使用纯虚方法而不是class,然后从接口继承为类。

struct IEngine
{
    virtual void Start() = 0;
    virtual void Stop() = 0;
    virtual ~IEngine() = default;
};

class V8Engine : public IEngine
{
    void Start() override { /* start the engine */ }
    void Stop() override { /* stop the engine */ }
};

我的直觉是将IEngine界面改为class。这里的界面使用structclass之间有区别吗?是否会出现您希望使用一个而不是另一个的情况?

0 个答案:

没有答案