struct Line {
NSUInteger x1;
NSUInteger x2;
};
// ...
- (Line)visibleLine;
Line は有効な型ではないため、上記のコードは明らかに機能しません。助言がありますか?
struct Line {
NSUInteger x1;
NSUInteger x2;
};
// ...
- (Line)visibleLine;
Line は有効な型ではないため、上記のコードは明らかに機能しません。助言がありますか?
Objective-C は、C++ ではなく C に基づいています。ではC
を使用する必要がありますがstruct Line
、C++ ではLine
問題ありません。
これは次のように行うことができます:
struct {
NSUInteger x1;
NSUInteger x2;
} Line;
// ...
- (struct Line)visibleLine{
}
また
struct Line {
NSUInteger x1;
NSUInteger x2;
};
typedef struct Line Line;
// ...
- (Line)visibleLine;
上記は、ほとんどの C フレームワークで推奨されています。
また、
typedef struct {
NSUInteger x1;
NSUInteger x2;
} Line;
// ...
- (Line)visibleLine;
typedef struct {
NSUInteger x1;
NSUInteger x2;
} Line;
// ...
- (Line)visibleLine;
私はもともと(他の回答の前に)明確な理由で上記を提案しました。これは、Appleが独自のコードで行う方法です。これが唯一の方法ではありませんが、Apple が行っている標準的な方法です。struct
API のどこにもメソッドのプロトタイプを挿入することはありません。
キーワードstructがありませんでした。
- (struct Line)visibleLine;