在src文件夹中有 main.h,testApp.cpp,testApp.h,rectangle.cpp,rectangle.h 。 我直接替换空项目中的src文件夹,但项目不会编译。
我相信搜索目录是正确的,因为类文件也在src文件夹中。
但是CB在testApp.h中向我显示了“错误:Rectangle没有命名类型”
Rectangle myRect;
我已将头文件包含在testApp.h(#include“rectangle.h”)中,并且包含ofMain.h的rectangle.h
不确定我是否正在以正确的方式加入一个班级。
谢谢!
testApp.h文件:
rectangle.h文件:
矩形cpp:
文件结构:
答案 0 :(得分:0)
你没有提供足够的信息,所以这都是猜测。但是,我的猜测是,几乎看不见的ofBa...
是罪魁祸首!如果这个类碰巧有一个名为Rectangle
的函数,那么就会找到这个名字,它显然不是一个类型。以下是您应该发布的简短示例,说明问题:
class Rectangle
{
};
struct foo
{
void Rectangle() {}
};
struct bar
: foo
{
Rectangle r;
};
问题的一个解决方法是使用::Rectangle
代替Rectangle
,因为此限定条件会强制查找全局范围。