我的iOS应用程序正在运行,突然间我看到了这个错误:“无法与之前的'type-name'声明说明符结合使用”。关于可能导致此错误的任何想法?
#import "SalesAPIManager.h"
@interface SalesDelegate : NSObject { // error points to this line
__unsafe_unretained id<SalesAPIManagerDelegate> delegate_;
}
@property (unsafe_unretained, nonatomic) id<SalesAPIManagerDelegate> delegate;
- (id)initWithDelegate:(id<SalesAPIManagerDelegate>)delegate;
@end
答案 0 :(得分:21)
同样,我在项目的随机文件中输入了一个拼写错误。这只是一些在评论之前意外放置的纯文本。我建议修理/找到它是一个;就在被标记的语句之前。然后,当我编译时,这会对错误的文本发出警告。
答案 1 :(得分:5)
这是Xcode的缺点之一。 Xcode是有史以来最糟糕的IDE之一,Apple正试图让每次更新都做得更好。 但是当你添加&#34;有些词&#34;在某些地方,Xcode的编译器没有看它。
我的情况就像是图像:
我忘了删除AppDelegate.h中的RESideMenu这个词 以及Xcode接受代码的奇怪的事情,直到Build和它触发错误时它将它发送到另一个而不是相关的类中。
答案 2 :(得分:3)
我有同样的问题。事实证明我的main.m
文件中有拼写错误。一旦我清除了这个错误,这个错误便消失了。
答案 3 :(得分:2)
当我的文件中存在一些我忘记取出的完整代码时,我看到了这个错误。编译器在返回类型的方法开头指出了错误,所以我花了很多时间查看方法声明和调用。原来不正确的错字超出了方法。因为没有“;”编译器只能告诉void关键字是错误的。
答案 4 :(得分:1)
我遇到了同样的问题。我最后在清除了.h文件底部的一些垃圾文本后修复了它。你可以试试。
答案 5 :(得分:0)
我在头文件中得到它,实际上错误是在.cpp中。结果我有一种方法试图以粗略的方式返回一个bool:
return (x == 1 && y == 2);
事实证明这不起作用,但Xcode以这种非常模糊的方式告诉我。
不确定这是否有帮助,但这是他们看似沙漠中的另一个例子。
答案 6 :(得分:0)
我知道这已经很晚了,但是,我刚刚在我的 cpp Xcode 项目(第 31 行)中出现了这个错误,并且在我直接在其上方完成字符串初始化(第 28 行)后它就消失了。我的代码如下: Cannot combine with previous 'type-name' declaration specifier
string //STRING NEEDING INITIALIZATION
void AMPM() {
if ((firstHourChar == 1) && (secondHourChar > 2)) {
afterAM = true;
}
}