#import <Foundation/Foundation.h>
#import "Person.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
Person *p = [Person new];
// [p setAge:18];
// [p setName:@"张三丰"];
//
// int a = [p age];
// NSString *s = [p name];
// 点语法:xcode的特性,xcode帮我们做代码替换
// 对象.属性名
// 注意,此时(p.age)并不是直接访问实例变量
// 而是xcode 看到点语法(p.age)后,会自动替换成 [p setAge:18];
p.age = 18;
p.name = @"xxxx";
// int a = [p age];
// NSString *s = [p name];
// 注意,此处p.age是出现在了等号的右侧
// 实际上,当xcode 看到p.age出现等号的右侧后,
// 它会帮我们把p.age -- 替换成 --> [p age];
int a = p.age;
NSString *s = p.name;
// 强调:p.age到底是替换成get方法还是set方法,一般取决于
// p.age出现在等号左侧还是右侧(是设置值,还是取值)
NSLog(@"age:%d, name:%@", a, s);
}
return 0;
}