不能指定存储类(Objective-c)错误

Posted

技术标签:

【中文标题】不能指定存储类(Objective-c)错误【英文标题】:No storage class may be specified (Objective-c ) error 【发布时间】:2011-07-06 01:11:27 【问题描述】:

我一直在努力

error: no type or storage class may be specified here before 'interface'

图片如下:

和代码:

#import <Foundation/Foundation.h>

@interface Utilities : NSObject 



+ (NSString *)getDocumentsDirectory;
+ (void)showActivityIndicator;
+ (void)hideActivityIndicator;
+ (void)setUser:(NSString *)userName withPassword:(NSString *)password;
+ (NSString *)getUserName;
+ (NSString *)getPassword;
+ (long long)generateTicketNumber;
+ (BOOL)reachable;
+ (NSString *)printerAddress;
+ (NSInteger)port;
+ (void)setAddress:(NSString*)newAddress andPort:(NSInteger)newPort;
+ (void)showDataActivity;

@end


@interface CustomUITextField:UITextField
    NSInteger rowNumber;


@property (nonatomic) NSInteger rowNumber;

@end

我将 .m 文件简化为简单的:

#import "Utilities.h"

@implementation Utilities

@end

我仍然得到错误。 (当然,我会因未实施方法而收到警告)。

在过去的 2-3 个小时里,我一直在试图找出问题所在。请帮忙。谢谢。

**更新:**我拆分了两个类,突然之间,我在一个完全不同的类中出现“找不到属性声明......”错误。

这是我的 DataCenter.h

#import <Foundation/Foundation.h>


@interface DataCenter : NSObject 
    BOOL updating;
    NSDictionary *dataDictionary;


@property (nonatomic, retain) NSDictionary *dataDictionary;

+ (DataCenter *)sharedInstance;
- (void)update;
- (NSArray *)getSTData;
- (BOOL)saveSTData;
- (NSArray *)getLookUpsData;
- (NSDate *)lastUpdated;

- (NSArray *)pendingData;
- (void)registerNewTicket:(NSDictionary *)ticketInfo;
- (void)savePendingData:(NSArray *)data;

@end

我得到“不在实现或接口上下文中的属性声明”

【问题讨论】:

这是您导入 Utilities.h 的唯一地方吗?如果没有,请检查您导入它的其他地方。 我会把这些分成两个文件。 我与 Firoze 一起投票——你所拥有的是有效的 ObjC,我刚刚通过 Xcode 运行验证了这一点。您的 .h 是否可能最终被普通 C 或 C++ 文件包含或导入? 请查看更新后的问题 【参考方案1】:

头文件的内容将在您包含/导入此头文件的任何位置进行编译。检查您是否没有将 Utilities.h 导入到 #import 之前出现错误的其他文件中。

【讨论】:

好的,那么你在哪里导入了这个头文件(或者现在是这些头文件),现在还有什么其他类给你一个错误? 现在发生这种情况的另一个地方是 DataCenter.h 。 DataCenter 和 Utilities 都包含在许多其他类中。 对我来说似乎是正确的。请看一下我把代码放在哪里的原始问题。 另外,看看构建日志,这可能会帮助您缩小范围。 @user635064 让我们continue this discussion in chat

以上是关于不能指定存储类(Objective-c)错误的主要内容,如果未能解决你的问题,请参考以下文章

Swift 类使用 Objective-C 类使用 Swift 类

在 Objective-c 中使用 swift 类

不能用存储的属性“描述”覆盖

clang:错误:不能同时指定“-fobjc-arc”和“-fobjc-gc”

如何在同一框架内访问 Objective-C 中的内部 Swift 类?

关于objective-c数组,这些方法你得知道