iOS的诡异错误 expected unqualified-id
2013-02-04 16:51
531 查看
不知道有没有人遇到过这样的错误,引入头文件的代码没有错误,但是出现 expected unqualified-id before interface 的错误。
在网上遍寻无获,只有逐个去检查代码,最后发现了原因所在。
原因:在某个类的头文件中,结尾处出现了某些错误(不属于语法错误的那种),编译器会把错误显示于引用这个头文件的地方,而不是这个头文件中。
说起来比较绕,我们举个例子吧。
例子:
------------------A.h-----------------
//Class A
@interface A:NSObject
{
.........
}
@end
----------------B.h---------------------
//Class B
@interface B:NSObject
{
.....................
}
然后在Class C里面这样引用
#import "B.h"
#import “A.h"
........
.......
.......
这样就会报错,原因是"expected unqualified-id"。错误位置是在Class A中,但是在Class A本身并没有出错。
出错原因:在B.h里面没有用@end结束,加上了@end之后,错误消失。
至于编译器为什么会出现这样的错误,无力解释了。
在网上遍寻无获,只有逐个去检查代码,最后发现了原因所在。
原因:在某个类的头文件中,结尾处出现了某些错误(不属于语法错误的那种),编译器会把错误显示于引用这个头文件的地方,而不是这个头文件中。
说起来比较绕,我们举个例子吧。
例子:
------------------A.h-----------------
//Class A
@interface A:NSObject
{
.........
}
@end
----------------B.h---------------------
//Class B
@interface B:NSObject
{
.....................
}
然后在Class C里面这样引用
#import "B.h"
#import “A.h"
........
.......
.......
这样就会报错,原因是"expected unqualified-id"。错误位置是在Class A中,但是在Class A本身并没有出错。
出错原因:在B.h里面没有用@end结束,加上了@end之后,错误消失。
至于编译器为什么会出现这样的错误,无力解释了。
相关文章推荐
- 错误:expected unqualified-id before ‘template’
- 编译器错误error: expected unqualified-id before 'using'| ||=== Build finished: 1
- XCode中添加第三方库报错Parse Issue: Expected unqualified-id错误的原因
- HandlerThread.cpp:23: 错误:expected unqualified-id before ‘using’
- g++编译错误:expected unqualified-id before ‘using’
- expected unqualified-id before ‘using’ 错误
- linux下编译复数类型引发的错误:expected unqualified-id before '(' token
- 错误expected unqualified-id before string constant
- C++ typedef struct 引起的expected unqualified-id before...错误
- g++ 编译头class的文件 出现expected unqualified-id before ‘namespace’错误的原因
- iOS Expected unqualified-id & Unknown type name 'NSString'
- iOS Expected unqualified-id 和 Unkown type name 'NSString'
- 编译器 expected unqualified-id before numeric constant 错误
- error: expected unqualified-id before '-' 错误
- g++ 错误:expected unqualified-id before ‘using’
- linux下编译复数类型引发的错误:expected unqualified-id before '(' token
- 错误:expected unqualified-id before ‘using’
- PAT [Error] expected unqualified-id before numeric constant
- 排错:expected unqualified-id before string constant
- “expected unqualified-id before numeric constant ”