我一直收到错误:
error C2146: syntax error : missing ';' before identifier 'mCameraFrame'
代码行:
Frame mCameraFrame;
很明显我的帧类没有以某种方式被发现。我有直接包含在此文件中的frame.h头文件(定义Frame类)。为什么视觉工作室不认识它?
答案 0 :(得分:3)
错误来自前面的代码行,可能是在头文件中。
例如:
struct foo
{
int a;
}
Frame mCameraFrame;
注意;
之后丢失的}
?这使Frame
合法作为结构的一个实例,但现在;
之前缺少mCameraFrame
,导致您报告的错误类型。
编译器无法在;
之后报告丢失的}
,因为它无法知道那里应该有一个,因为它之后的Frame
是完美的法律。
单个遗失;
或遗失}
导致错误报告的次数比实际问题晚了很多行,有时会有数百个错误,这并不罕见。
答案 1 :(得分:0)
想我会向任何有兴趣的人报告。问题是本应该定义mCameraFrame的Frame类位于不同的命名空间中,所以我所要做的就是“使用namespace ....;”。卫生署! :P