【发布时间】:2014-05-13 18:02:50
【问题描述】:
我是 Objective C 的新手,并且正在使用 IOS 开发人员库学习类扩展。在自定义现有类中,我被要求创建一个只读属性,然后还创建一个与 readwrite 具有相同属性的类扩展。
//XYZPerson.h
@property (readonly) NSInteger height;
@property (readonly) NSInteger weight;
-(NSInteger) measureHeight;
-(NSInteger) measureWeight;
//XYZPerson.m
@interface XYZPerson() //class extension
@property (readwrite) NSInteger height;
@property (readwrite) NSInteger weight;
@end
@implementation XYZPerson
-(NSInteger) measureHeight
{
self.height = 100;
return self;
}
-(NSInteger) measureWeight
{
self.weight = 80;
return self;
}
我的目标是分配身高和体重值。当我构建时,我收到一个编译器警告:指向整数转换的指针不兼容,从结果类型为'NSInteger'(又名'long')的函数返回'XYZPerson *const __strong'”当我运行程序时,高度和重量值为0;
将值分配给 NSInteger 属性的语法是否有误?
【问题讨论】:
标签: objective-c