如何从NSMutableString中取出NSString?

时间:2009-08-30 18:10:41

标签: iphone cocoa-touch uikit

这有点令人困惑。 NSMutableString继承自NSString,但这是否意味着我可以安全地将NSMutableString传递到实际需要NSString的地方?我可以将NSString分配给NSMutableString吗?我如何从NSMutableString中获取NSString以避免出现问题?

1 个答案:

答案 0 :(得分:17)

  1. 是的,您可以为NSMutableString传递NSString。但是,请注意,如果传递它的对象存储对此对象的引用,它将“看到”您对可变字符串对象所做的所有更改。这并不总是可取的。

  2. 不,不可能。如果您的NSMutableString指针指向NSString并在其上调用appendString:,则该对象将不知道如何处理该调用。

    (前两个是OO包含多态性基础)

  3. 如果您想从可变字符串中获取不可变字符串,请使用[mutableString copy]