У меня есть собственный класс с примитивными типами данных в качестве свойств.Если я создаю экземпляр этого класса в статическом методе другого класса, примитивные переменные как-то не изменяются.
header
@interface CustomClass : NSObject {
double value;
}
@property (nonatomic) double value;
m file
@implementation CustomClass
-(id)init
{
if ((self = [super init]))
{
self.value = 0;
}
return self;
}
Создать и вернуть экземпляр этого класса в статическом методе:
+(CustomClass *)CalculateValue:(double)val{
CustomClass *customClass = [[CustomClass alloc] init];
customClass.value = val;
//The value is not changing after set!!
return [customClass autorelease];
}
Если я использую объект вместо примитивной переменной (например, NSNumber
), эта проблема не возникает.