軽量ジェネリックでスタック クラスを実装しようとしています。しかし、Xcode が の定義を見つけられないため、コードはコンパイルに失敗しました。ObjectType
@implementation Stack
- (ObjectType)popObject !!!!!!!!!Expected a type
{
return self.allObjects.firstObject;
}
@end
ヘッダー宣言はエラーを生成しないため、奇妙です。
@interface Stack<__covariant ObjectType> : NSObject
- (ObjectType)popObject;
@property (nonatomic, readonly) NSArray<ObjectType> *allObjects;
@end
ObjectType
に変更することで機能させることができましたid
。エラーを修正するより良い方法はありますか?