2010-12-02 5 views
2

私はユーザー入力変数を持っています。これを配列に追加したいのですが。 firstStoreは配列が初期化されているかどうかを判断するBOOL型です。 STOREが呼び出された最初のときに、配列を初期化します。私はNSNumberをマスキングすることによってオペランド(これは倍精度浮動小数点数)と等価にしようとしましたが、 "NSNumberが+オペランドに応答しない"というエラーがあるため動作しません。また、プログラムがクラッシュするline [memArray addObject:num]です。私はこのようなもので新しいので、どんな助けも大いに評価されるでしょう。NSMutableArrayに(double)変数を追加します。

else if ([operation isEqual:@"Store"]) { 
    if(!firstStore){ 
     memArray = [[NSMutableArray alloc] init]; 
     NSNumber *num = [NSNumber operand]; 
     [memArray addObject:num]; 
     firstStore = YES; 
    } else { 
     //NSNumber *num = [NSNumber operand]; 
     //[memArray addObject:num]; 
    } 

} 
+0

質問に正しくタグを付けると、注意を促すのに役立ちます。 xcodeは単なるIDEです。この質問については問題ではありません。 – vikingosegundo

答えて

2

"NSNumber may not respond to +operand"で何を意味してこう述べています。そのようなクラスメソッドoperandはありません。それは何をすべきか?

memArrayが初期化されているかどうかを追跡するブールは必要ありません。使用:

if(!memArray) 

または

if (memArray == nil) 
3

[NSNumber numberWithDouble:operand][NSNumber operand]を変更してみてください。

関連する問題