可能重复:
Purpose of @ Symbol Before Strings?为什么在Objective-C的字符串之前使用'@'?
我一直好奇,什么@
每个字符串之前的意思是客观C.它是不是在编译器更容易,或以某种方式更有效?
实施例:
NSString* flavour = @"Chocolate"
可能重复:
Purpose of @ Symbol Before Strings?为什么在Objective-C的字符串之前使用'@'?
我一直好奇,什么@
每个字符串之前的意思是客观C.它是不是在编译器更容易,或以某种方式更有效?
实施例:
NSString* flavour = @"Chocolate"
微分目标c CLASSE我认为
的@
字符不是在C或C++的标识符所使用的,所以它用于引入目标C语言关键字的方式不会与其他语言的关键字冲突。这使得语言的“Objective”部分可以与C或C++部分自由混合。
你可以在'@interface','@ implementation','@ property','@ synthesize'等东西中看到它的其他用途。 – Jasarien
由于Objective-C是纯C的超集,必须有区分NSString
文字平原C字符串(它们是基本上只是char*
指针)的一种方式。
@"Chocolate"
只是创建NSString
实例的快捷方式。你也可以使用:
[[NSString alloc] initWithUTF8String:"Chocolate"];
如果你没有使用你将创建一个C字符串(char
阵列)的@。
Duplicate - http://stackoverflow.com/q/25749/542425 – 0x8badf00d
“@标记经常在Objective-C中用来表示扩展到该语言。” src- http://www.otierney.net/objective-c.html –