使用来自不同类的对象时出错

时间:2014-01-28 03:15:22

标签: c++ oop

foo.h中

class Foo{
private:
    void printSpecialBar(Bar b);//syntax error: Identifier Bar

Foo.cpp中

#include "Bar.h"

void Foo::printSpecialBar(Bar b)
{
    //code goes here
}

Bar具有默认构造函数,并且具有两个int的构造函数。

语法错误有什么问题?我尝试使用范围结果运算符Bar :: Bar b,但它没有修复它。

2 个答案:

答案 0 :(得分:1)

典型的做法是放

class Bar;
Foo.h中的

,在对Bar类的任何引用之前,并包含实际的类,如

#include "Bar.h"
Foo.cpp中的

答案 1 :(得分:0)

由于Foo.h引用了Bar,请使用前向声明或#include "Bar.h"中的Foo.h