1. ホーム
  2. objective-c

[解決済み] Objective-Cでメソッドの横にあるプラスとマイナスの記号は何を意味するのですか?

2022-04-24 15:35:04

質問

Objective-Cにおいて +- の記号は、メソッドの定義の隣にあることを意味します。

- (void)loadPluginsAtPath:(NSString*)pluginPath errors:(NSArray **)errors;

解決方法は?

+ はクラスメソッド用で - はインスタンスメソッドです。

// Not actually Apple's code.
@interface NSArray : NSObject {
}
+ (NSArray *)array;
- (id)objectAtIndex:(NSUInteger)index;
@end

// somewhere else:

id myArray = [NSArray array];         // see how the message is sent to NSArray?
id obj = [myArray objectAtIndex:4];   // here the message is sent to myArray

// Btw, in production code one uses "NSArray *myArray" instead of only "id".

そこに クラスメソッドとインスタンスメソッドの違いに関する別の質問です。 .