Как использовать значение объекта NSDecimalNumber в другой функции? - PullRequest
1 голос
/ 06 апреля 2011

Я новичок в цели, и я хотел знать, как это сделать.

У меня есть функция, в которой я делаю некоторые вычисления и сохраняю результат в объекте NSDecimalNumber.Я хочу использовать этот результат в другой функции. Кто-нибудь может мне помочь!спасибо!

Пример:

- (IBAction)calculate:(id)sender{
    NSDecimalNumber *one = [[NSDecimalNumber alloc]initWithString:@"1"];
    NSDecimalNumber *two = [[NSDecimalNumber alloc]initWithString:@"2"];
    //result is a NSDecimalNumber object created in my .h file 
    result = [[NSDecimalNumber alloc]init];
    result = [one decimalNumberByAdding:two];
    //result is now equal to 3 

}
- (IBAction)findResult:(id)sender{
    NSDecimalNumber *findNumber = [[NSDecimalNumber alloc]init];
    //I want "findNumber" to have the same value as result, which was given the value of 3 in method calculate  
    findNumber = result; 

}

1 Ответ

1 голос
/ 06 апреля 2011

Если вы устанавливаете переменную таким образом, вам не нужно сначала вызывать alloc / init.Например, ваш первый метод может быть просто

NSDecimalNumber *one = [[NSDecimalNumber alloc]initWithString:@"1"];
NSDecimalNumber *two = [[NSDecimalNumber alloc]initWithString:@"2"];    
result = [one decimalNumberByAdding:two];

Предполагая, то есть, что вы объявили результат до того, как в:

@interface MyClass {
NSDecimalNumber *result;
}

Затем, во второй функции, если выдействительно нужна копия результата вместо того, чтобы просто ссылаться на саму переменную результата, вы можете сделать:

NSDecimalNumber *findNumber = [result copy];

Не забудьте отпустить, когда вы закончите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...