Objective-C在@"hello"
和"hello"
之间有什么区别?objective-c @“hello”和“hello”之间的区别?
回答
@"hello"
创建NSString
类(这是一个正确的Objective-C的对象)的一个实例,而
"hello"
将创建一个简单C字符串(的const char[]
类型)。
实际上,取决于你使用的是哪个版本的'clang' /'gcc'(在这种情况下,添加了objc文字之前的版本),'@“str”'文字返回只读字符串,完全驻留在静态数据中,并且没有字符串被“创建”。只是一些技术细节。现在,是否一个文字是一个静态引用或不是实现定义。 –
可能值得一提的是,@“hello”只是'[NSString stringWithUTF8String:“hello”]的一个快捷方式;''但我认为它有助于展示真正的区别.... – lnafziger
@inafziger不总是这种情况,如果你阅读我上面的评论。虽然在语义上他们可能看起来是相同的,但实际上它们实际上是完全不同的。 –
@“你好”是的NSString(目标C类)常数和“你好”字符串常量
- 1. 文件名中的hello /和hello之间的区别,URI
- 2. “hello”和{“hello”}有什么区别?
- 3. “hello”.length和“hello”.length是什么区别?
- 4. String s1 =“Hello”和String s1 = new String(“Hello”)之间的区别是什么?
- 5. out.println(“<html> Hello World</html>”)和out.println(“Hello World”)之间的区别
- 6. Angular.js Hello World 1.2.0和1.4.7之间的区别
- 7. “http:// localhost/app/hello”和“http:// localhost/app/hello /”有什么区别?
- 8. scala中的“Hello”foreach(x = x * _.toLong)和“Hello”foreach(x * = _.toLong)有什么区别?
- 9. 使用双引号时,{$ hello},$ {hello}和$ hello有什么不同?
- 10. 亚太地区的Hello World
- 11. Hello World和V8
- 12. `string s(“hello”);```string s =“hello”;`
- 13. python print“hello world”vs“hello world”
- 14. 找到次数字符串“hello hello”的次数的正则表达式出现在字符串“hello hello hello”中
- 15. 之间的〜/和的区别../
- 16. '#','%'和'$'之间的区别
- 17. {!!之间的区别!!}和{{}}
- 18. '+ ='和'= +'之间的区别?
- 19. “。+”和“。+?”之间的区别
- 20. .eq之间的区别。和==
- 21. #。/和#之间的区别。 ./
- 22. !=和!之间的区别==
- 23. “%〜dp0”和“。\”之间的区别?
- 24. | =和^ = css之间的区别
- 25. 之间的区别。和#
- 26. ==和case之间的区别?
- 27. “**/* /”和“** /”之间的区别?
- 28. jQuery - '。'之间的区别和“#”
- 29. “?1”和“?”之间的区别
- 30. `%in%`和`==`之间的区别
如果你甚至不知道这样一个根本的东西,请不要学习C正确潜水前深入到可可/目标-C,否则你会迷路并将自己和你的用户拍到脚下。 – 2012-12-17 05:49:54
为什么这个讨厌的评论只是一个简单而明确的问题?凯文可能只是在寻找一个好的答案。 – Cocoanetics