10-07、NSString字符串的三种创建方式

如何创建字符串对象:
 通过不同的方式创建字符串,字符串对象储存的位置也不一样
 >如果是通过字符串常量创建,那么字符串对象存储在常量区中
 >如果是通过alloc initWithFormat/stringWithFormat创建,那么字符串对象存储在堆区中
 而且需要注意:
 >alloc创建两次相同内容的字符串对象,不同的平台存储的方式也不一样,如果是Mac平台系统会自动对字符串对象进行优化两个对象指向的是同一块存储空间(对alloc进行优化还是在常量区),但是如果是iOS平台就是两个对象指向不同的存储空间地址(alloc是在堆内存)
 >不同的编译器存储的方式也不一样,如果是Xcode6以下并且是在iOS平台,那么每次alloc都会创建一个新的对象,如果是在Xcode6以上那么alloc多次指向同一块存储空间
Snip20170929_108.png
Snip20170929_109.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、字符串在C#中,字符串是一系列不可修改的Unicode字符,创建字符串后,就不能修改它。要创建字符串,最常用的...
    CarlDonitz阅读 5,099评论 0 2
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,771评论 0 4
  • 一、如何创建字符串 1.通过字符串常量创建 注意:字符串常量创建多个相同的字符串,打印出来地址一样 NSStrin...
    爱貌貌Manners阅读 3,229评论 0 0
  • Q和L是关系非常要好的朋友。 Q是一个性格开朗的人,上学的时候他们家经常会有同学去玩,因此他爸爸总是说他不务正业,...
    江南宁杭雨阅读 1,814评论 0 0
  • 在和府捞面练习今天学到的姿势,最下面的叶子是前景,左边的画布跟右边的柱子构成了一个画框,背对我的人物是主体,远处的...
    笑点滴滴阅读 1,837评论 0 0

友情链接更多精彩内容