Objective-Cで浮動小数点数の配列を作成するにはどうすればよいですか? 出来ますか?
質問する
20425 次
4 に答える
24
使用する言語に応じて、さまざまな方法で動的配列 (サイズはコンパイル時ではなく実行時に決定される) を作成できます。
Objective-C
NSArray *array = [[NSArray alloc] initWithObjects:
[NSNumber numberWithFloat:1.0f],
[NSNumber numberWithFloat:2.0f],
[NSNumber numberWithFloat:3.0f],
nil];
...
[array release]; // If you aren't using ARC
または、作成後に変更する場合は、次を使用しますNSMutableArray
。
NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:0];
[array addObject:[NSNumber numberWithFloat:1.0f]];
[array addObject:[NSNumber numberWithFloat:2.0f]];
[array addObject:[NSNumber numberWithFloat:3.0f]];
...
[array replaceObjectAtIndex:1 withObject:[NSNumber numberWithFloat:99.9f]];
...
[array release]; // If you aren't using ARC
または、新しいっぽいObjective-C リテラル構文を使用します。
NSArray *array = @[ @1.0f, @2.0f, @3.0f ];
...
[array release]; // If you aren't using ARC
ハ
float *array = (float *)malloc(sizeof(float) * 3);
array[0] = 1.0f;
array[1] = 2.0f;
array[2] = 3.0f;
...
free(array);
C++ / Objective-C++
std::vector<float> array;
array[0] = 1.0f;
array[1] = 2.0f;
array[2] = 3.0f;
于 2012-10-17T09:54:57.603 に答える
3
動的なアプローチでは、NSNumber
object を使用して に追加できNSMutableArray
ます。または、静的配列のみが必要な場合は、コメントからの提案を使用するか、 standard を使用しますC
。
お気に入り:
NSMutableArray *yourArray = [NSMutableArray array];
float yourFloat = 5.55;
NSNumber *yourFloatNumber = [NSNumer numberWithFloat:yourFloat];
[yourArray addObject:yourFloatNumber];
そして取得する:
NSNumber *yourFloatNumber = [yourArray objectAtIndex:0]
float yourFloat = [yourFloatNumber floatValue];
于 2012-10-17T09:54:29.853 に答える
1
Xcode 4.4+ を使用している場合は、これを試すことができます。
NSArray *a = @[ @1.1f, @2.2f, @3.3f];
以下は、LLVM Compiler 4.0 のすべての新しいリテラルです。
于 2012-10-17T10:07:30.973 に答える