iphone - NSString 真的是不可变的吗?

标签 iphone objective-c

为什么当我编码时我可以做到:

NSString *test;

test = @"stack";
test = @"overflow";

没有任何问题,NSString 不应该是不可变的吗?

最佳答案

不可变的。您不会使用这些语句更改底层字符串,而是创建/使用一个全新的字符串。指针本身可以根据需要随时更改,但这不是字符串。

关于iphone - NSString 真的是不可变的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3428228/

相关文章:

iphone - 从 monotouch 到 Malloc() 的最佳方法是什么?

iphone - 如何向 UITableViewCell 添加斜面

iphone - 关于 UIImageView 常量动画

ios - 即使其他功能有效,排行榜分数也不会显示在 GameCenter 中

c - 将 double 限制为两位小数

objective-c - 在桥接 Objective C 文件中使用 Swift 类

iphone - 有没有办法在从 UIWebView 发出调用时捕获警报事件?

iphone - 使用 CocoaHttpServer 或 iPhone 上的任何 http 服务器上传多个文件

ios - 仅在 iOS 10 中,Imagepicker 覆盖不全屏显示

ios - 如何检测发送到其他应用程序的推送通知?