1

今日、ストレージ エラーが発生しました。と がNSArrayありNSMutableDictionaryます。問題は、 myNSMutableDictionaryが配列になることです。コードは次のとおりです。

ヘッダ:

NSArray *tableViewCellValues;
NSMutableDictionary *inputValues;

実装:

- (void)viewDidLoad
{
  [super viewDidLoad];
  tableViewCellValues = [NSArray arrayWithObjects:@"First", @"Second", @"Third", nil];
  inputValues = [NSMutableDictionary dictionary];
  //other code...
}

したがって、通常、「First」、「Second」、および「Third」をオブジェクトとして、空の を含む配列を取得する必要がありますNSMutableDictionary。初期化直後にログに出力するNSMutableDictionaryと、次のようになります。

(lldb) po tableViewCellValues
(NSArray *) $1 = 0x00000000 <nil>
(lldb) po inputValues
(NSMutableDictionary *) $2 = 0x06a80420 <__NSArrayI 0x6a80420>(
First,
Second,
Third
)

(lldb) po [tableViewCellValues class]
error: Couldn't execute function; result was eExecutionDiscarded
(lldb) po [inputValues class]
(id) $4 = 0x01453b64 __NSArrayI

私はそこにちょっと混乱しています。クリーニングして再度実行してみましたが、何も起こりません。

重要な場合は、Mac OS X 10.7.3 と Xcode 4.3 を使用しています。

どんな助けでも大歓迎です。

4

3 に答える 3

2

本当に辞書にメモリを割り当てたいので、次のようにする必要があります。

self.inputValues = [[NSMutableDictionary alloc] init];

于 2012-06-14T13:14:41.990 に答える
-1

これは、辞書を割り当てていないためです

このコードを使用してください

inputValues = [[NSMutableDictionary alloc] init];
于 2012-06-14T13:27:44.807 に答える