千家信息网

如何理解OC中的copy和mutableCopy

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,如何理解OC中的copy和mutableCopy,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。OC中,复制有两种: copy 和 mut
千家信息网最后更新 2026年11月03日如何理解OC中的copy和mutableCopy

如何理解OC中的copy和mutableCopy,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

OC中,复制有两种: copy 和 mutableCopy。顾名思义,是生成不可变或可变的对象。关于复制出来的到底是新对象还是原来对象,请参考一下代码:

#import int main(int argc, char *argv[]) {        @autoreleasepool {                NSString *s1 = @"haha";                NSString *s2 = [s1 copy];                NSMutableString *s3 = [s1 mutableCopy];                NSString *s4 = [s3 copy];                                NSLog(@"s1 addr = %p", s1);                NSLog(@"s2 addr = %p", s2);                NSLog(@"s3 addr = %p", s3);                NSLog(@"s4 addr = %p", s4);        }}

输出的结果为:

s1 addr = 0x10a2e6030

s2 addr = 0x10a2e6030

s3 addr = 0x7fd0b940c6e0

s4 addr = 0x6168616845

由此可见,对不可变对象进行copy操作,不会产生新的对象,而是指向原来对象。其他的都是会生成一个新的复制品


copymutableCopy
可变对象
新对象新对象
不可变对象原来对象新对象

看完上述内容,你们掌握如何理解OC中的copy和mutableCopy的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

对象 可变 内容 方法 更多 问题 生成 束手无策 顾名思义 为此 代码 原因 复制品 对此 技能 指向 由此 由此可见 篇文章 经验 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 什么是科技互联网 广州为想互联网科技有限公司 互联网科技公司简介 中国互联网科技工作委员会毛军 科技信息互联网 互联网科技美容 互联网科技股午盘股票涨跌 海南购全球互联网科技 团飞科技与伯堂互联网服务平台 广州恒生互联网科技有限 千方科技属于互联网企业吗 特约风豹互联网科技为什么扣费 互联网企业科技类企业如何做账 广西科技产业互联网是什么 兰石爱特工业互联网科技分公司 悟空问答互联网科技 亚光科技低轨卫星互联网 河南商务圈互联网科技有限公司 科技互联网企业在行动 伍佰万互联网科技是干嘛的 百单网互联网科技有限公司怎么样 哈尔滨大商圈互联网科技有限公司 紫鲸互联网科技 互联网科技logo设计 佰商互联网科技有限公司 小米互联网科技园设置 重庆互联网医院沙龙医盟信息科技 语蝶互联网科技有限公司 注册互联网科技公司经营范围大全 瑞安市蟠桃会互联网科技有限公司
0