1

NSDecimalNumber amount_before_current_year のプロパティにアクセスしようとすると、アプリがクラッシュします。

[amount_before_current_year stringValue]
Program received signal:  “EXC_BAD_ACCESS”.

添付の画像に示すように、オブジェクトは NSDecimalNumber です。

viewDidLoad で作成しました。ヘッダー ファイルに存在します。

.h
...
    NSDecimalNumber *amount_before_current_year;
...
@property (nonatomic, retain) NSDecimalNumber *amount_before_current_year;
...

実装ファイルにも:

@synthesize amount_before_current_year;


    amount_before_current_year = [NSDecimalNumber decimalNumberWithString:@"100.00"];

ここで私はそれをもう一度呼びます:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

NSString *test = [amount_before_current_year stringValue]; // HARD CRASH !!!

だから、私は今何をすべきかわからない、私はこれで数時間を費やしました.....

何か案は ??????

ありがとう、r. 代替テキスト

4

1 に答える 1

3

割り当てるときに amount_before_current_year を保持するか、ドット表記を使用して割り当てる必要があります。

self.amount_before_current_year = [NSDecimalNumber decimalNumberWithString:@"100.00"]

属性を保持してプロパティを宣言したため、合成されたセッターは自動的に保持メッセージを送信し、以前の値を解放します。このアプローチをお勧めします。

于 2010-02-27T17:52:54.220 に答える