[OC学習ノート]対象
2410 ワード
ocはcをベースとしたオブジェクト向け言語であり,C++も,このノートでは両者を比較学習する.
次に、OCエンティティオブジェクトの宣言と実装を例に挙げます.
メソッドのマイナス記号(-)は、このメソッドがインスタンスメソッドであることを示し、プラス記号(+)はクラスメソッドであることを示します(c++のstaticメソッドのように推測されます).
ここですべてのものを1つのファイルに書くのは規範的ではありません.
次に、OCエンティティオブジェクトの宣言と実装を例に挙げます.
#import <Foundation/Foundation.h>
@interface Fraction : NSObject // , C++ (.h)
-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenomiator: (int) d;
@end //
@implementation Fraction // , C++ (.cpp)
{
int numerator;
int denominator;
}
-(void) print
{
NSLog(@"%i/%i", numerator, denominator);
}
-(void) setNumerator: (int) n
{
numerator = n;
}
-(void) setDenomiator: (int) d
{
denominator = d;
}
@end
int main(int argc, char* argv[])
{
@autoreleasepool {
Fraction *myFraction;
myFraction = [Fraction alloc];
myFraction = [myFraction init];
[myFraction setNumerator: 1];
[myFraction setDenomiator: 3];
NSLog(@"The Value of MyFraction is:");
[myFraction print];
}
return 0;
メソッドのマイナス記号(-)は、このメソッドがインスタンスメソッドであることを示し、プラス記号(+)はクラスメソッドであることを示します(c++のstaticメソッドのように推測されます).
ここですべてのものを1つのファイルに書くのは規範的ではありません.