接口的集合取决于彼此

时间:2014-05-03 08:32:56

标签: c++ interface

让我有两个接口:

class foo{
public:
    virtual void fooo(bar * b)=0;
}

class bar{
public:
    virtual void barr(foo * f)=0;
}

但是这段代码片段格式不正确。如何正确编写此接口?

2 个答案:

答案 0 :(得分:0)

  

如何正确编写此接口?

您始终可以转发声明类,并在看到前向声明的代码中使用指针或引用 一旦任何代码需要引用类成员,就必须看到完整的类声明。

class bar; // << Note the forward declaration
class foo{
public:
    virtual void fooo(bar * b)=0;
}

class bar{
public:
    virtual void barr(foo * f)=0;
}

答案 1 :(得分:0)

只需转发声明bar;

class bar;

class foo{
public:
    virtual void fooo(bar * b)=0;
}

class bar{
public:
    virtual void barr(foo * f)=0;
}