我一直在使用Objective-C一段時間,但從未真正理解@符號在所有字符串之前的用途是什麼。舉例來說,你爲什麼要聲明一個字符串是這樣的:字符串之前@符號的用途?
NSString *string = @"This is a string";
,而不是像這樣:
NSString *anotherString = "This is another string";
如您在Java或許多其他編程語言做。有沒有很好的理由?
我一直在使用Objective-C一段時間,但從未真正理解@符號在所有字符串之前的用途是什麼。舉例來說,你爲什麼要聲明一個字符串是這樣的:字符串之前@符號的用途?
NSString *string = @"This is a string";
,而不是像這樣:
NSString *anotherString = "This is another string";
如您在Java或許多其他編程語言做。有沒有很好的理由?
它表示的NSString(而不是標準的C字符串)
一個NSString是存儲Unicode字符串,並提供了一堆方法來輔助操作對象。
C字符串只是一個以\ 0結尾的字符串(字節)。
編輯:好的原因是Objective-C建立在C之上,C語言構造需要仍然可用。 @「」是一個僅用於Objective-C的擴展。
請參閱[@符號在objective-c中代表什麼? ](http://stackoverflow.com/questions/25749/what-does-the-symbol-represent-in-objective-c)。 – 2010-12-15 03:00:29
這很有道理。謝謝! – Jumhyn 2010-12-15 03:03:57