您的位置:首页 > 移动开发 > Objective-C

Objective-C 程序设计 第三章

2015-10-17 12:34 288 查看
#import <Foundation/Foundation.h>

@interface Fraction : NSObject

-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;

@end

@implementation Fraction
{
int numerator;
int denominator;
}

-(void) print
{
NSLog(@"%i/%i", numerator, denominator);
}

-(void) setNumerator:(int)n
{
numerator = n;
}

-(void) setDenominator:(int)d
{
denominator = d;
}

@end

int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
int res, value1, value2;
value1 = 87;
value2 = 15;

res = value1 - value2;
NSLog(@"%i - %i = %i", value1 ,value2, res);
NSLog(@"Programming is fun!");

Fraction *myFraction;
myFraction = [Fraction alloc];
myFraction = [myFraction init];

[myFraction setNumerator:1];
[myFraction setDenominator:3];

NSLog(@"The value of myFraction is :");
[myFraction print];
}
return 0;
}


分析:

1. autoreleasepool,就是自动释放池。

2. 不是include,而是import。

3. NSLog使用@“”,表示格式化字符串。int使用 %i 进行表示。

4. 定义类先说明interface,再进行implementation的说明。函数写法注意。

-(void) FunctionA : (int) A; 开头是-,表示是一个实例方法;如果开头是+,表示是一个类方法。

目前发现成员属性都写在了implamentation。

5. 使用类和对象,以及方法。[],创建对象时先alloc,再init。然后使用方法时如带参数使用:进行说明。

也可以使用[类 new]一次创建并初始化。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: