po self.URL.copy
$1 = 0x1fc3ced0 http://maps.googleapis.com/maps/api/staticmap?&zoom=16&size=160x160&maptype=roadmap&sensor=true¢er=-6.2032,106.7696&markers=size:small%7Ccolor:blue%7C-6.2032,106.7696
$2 = 0x1fc3ced0 http://maps.googleapis.com/maps/api/staticmap?&zoom=16&size=160x160&maptype=roadmap&sensor=true¢er=-6.2032,106.7696&markers=size:small%7Ccolor:blue%7C-6.2032,106.7696
$3 = 0x1fc3ced0 http://maps.googleapis.com/maps/api/staticmap?&zoom=16&size=160x160&maptype=roadmap&sensor=true¢er=-6.2032,106.7696&markers=size:small%7Ccolor:blue%7C-6.2032,106.7696
(lldb) po self.URL
$4 = 0x1fc3ced0 http://maps.googleapis.com/maps/api/staticmap?&zoom=16&size=160x160&maptype=roadmap&sensor=true¢er=-6.2032,106.7696&markers=size:small%7Ccolor:blue%7C-6.2032,106.7696
我认为副本应该返回相同但位于不同地址的内容吗?
答案 0 :(得分:3)
NSString
是不可变的,因此没有理由实际复制它。相反,它可能只是在内部增加引用计数。查看this question了解详情。
答案 1 :(得分:3)
如果字符串是不可变的,那么copy
实际上只是retain
。由于字符串的内容永远不会改变,因此不需要复制字符串的数据。