来自Xcode的src文件给我错误:没有在CodeBlocks中命名类型

时间:2013-08-29 20:44:09

标签: c++ codeblocks openframeworks

有人向我传递了一个openFrameworks项目的src文件夹。该项目有一个名为“矩形”的类。

在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文件:

enter image description here

rectangle.h文件:

enter image description here

矩形cpp:

enter image description here

文件结构:

enter image description here

1 个答案:

答案 0 :(得分:0)

你没有提供足够的信息,所以这都是猜测。但是,我的猜测是,几乎看不见的ofBa...是罪魁祸首!如果这个类碰巧有一个名为Rectangle的函数,那么就会找到这个名字,它显然不是一个类型。以下是您应该发布的简短示例,说明问题:

class Rectangle
{
};

struct foo
{
    void Rectangle() {}
};

struct bar
    : foo
{
    Rectangle r;
};

问题的一个解决方法是使用::Rectangle代替Rectangle,因为此限定条件会强制查找全局范围。