重複の可能性:
文字列の前の @ 記号の目的?
すべての文字列が客観的な C である前に、私は何@
を意味するのか興味がありました.コンパイラにとってより簡単ですか、それとも何らかの形でより効率的ですか?
例:
NSString* flavour = @"Chocolate"
重複の可能性:
文字列の前の @ 記号の目的?
すべての文字列が客観的な C である前に、私は何@
を意味するのか興味がありました.コンパイラにとってより簡単ですか、それとも何らかの形でより効率的ですか?
例:
NSString* flavour = @"Chocolate"
@"Chocolate"
NSString
インスタンスを作成するための単なるショートカットです。以下を使用することもできます。
[[NSString alloc] initWithUTF8String:"Chocolate"];
@ を使用しない場合は、C 文字列 (char
配列) を作成します。
この@
文字は C または C++ の識別子では使用されないため、他の言語のキーワードと競合しない方法で Objective-C 言語のキーワードを導入するために使用されます。これにより、言語の「目的」部分を C または C++ 部分と自由に混在させることができます。
NSString
Objective-C はプレーン C のスーパーセットであるため、リテラルをプレーン C 文字列 (基本的には単なるchar*
ポインター)と区別する方法が必要です。
C文字列と私が思う目的のCクラスを区別する