我正在为 OSX 开发 Objective-c 中的应用程序。
我写了第一个类,并尝试在我的 MainThread 中调用这个类。
构建成功但应用程序崩溃
设备管理器.h
#import <Foundation/Foundation.h>
@interface DeviceManager : NSObject
+(void)DeviceManager:OpenDevice;
@end
设备管理器.m
#import "DeviceManager.h"
@implementation DeviceManager
- (id)init{
self = [super init];
if(self){
NSLog(@"Init");
}
return self;
}
+ (void)DeviceManager:OpenDevice {
NSLog(@"Opening Device");
}
@end
main.m 正在调用它:
#import "DeviceManager.h"
int main(int argc, const char * argv[]) {
[DeviceManager OpenDevice];
return NSApplicationMain(argc, argv);
}
在构建时,我不知道选择器 OpenDevice 的类方法
谢谢
塞布
最佳答案
#import <Foundation/Foundation.h>
@interface DeviceManager : NSObject
+ (void) openDevice;
@end
设备管理器.m
#import "DeviceManager.h"
@implementation DeviceManager
+ (void) openDevice {
NSLog(@"Opening Device");
}
@end
主文件
#import "DeviceManager.h"
int main(int argc, const char * argv[]) {
[DeviceManager openDevice];
return NSApplicationMain(argc, argv);
}
以上对我有用。
DeviceManager:OpenDevice
是什么意思意思是?因为除非它是一种定义方法的新方法,否则它就是胡言乱语。看起来你想要一个名为 openDevice 的设备管理器类方法...所以使用 + (void) openDevice {...}
.
关于objective-c - 选择器 OpenDevice 的未知类方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31600126/