1

次の行に沿って何かを行うことは可能ですか:

 Entity [NSString stringWithFormat:@"Entitiy%i",entitiesCreated];

Entity1、Entity2、Entity3、Entityn という変数を作成するには? どうやってそれを行うかは気にしません。可変名の変数に似たものが必要なだけです。用途があれば、それらは配列に追加されます。

4

1 に答える 1

0

「変数」自体ではありませんが、データを名前で保存する一般的な方法は、NSMutableDictionary(ObjC の場合)std::unordered_mapまたはstd::map(C++ の場合) などの連想データ構造を使用することです。それらを調査しましたか?特に、たとえば、これはあなたがやろうとしているように見えるものに近似しています:

NSMutableDictionary* dict = [NSMutableDictionary dictionaryWithCapacity:1];
[dict addObject:somevalue forKey:[NSString stringWithFormat:@"Entity%i",entitiesCreated]];

次に、値にアクセスします。

id val = [dict valueForKey:@"Entity1"];

とか、ぐらい。

すべての変数を保持するためにそのような連想データ構造が使用される JavaScript や PHP などの別のプログラミング言語から来ていると思います。これは、変数が静的に割り当てられる C 派生言語には当てはまりません。動的データ構造を明示的に作成する必要があります。

于 2012-05-05T15:37:53.203 に答える