有点令人困惑。NSMutableString继承自NSString,但这是否意味着我可以在任何需要NSString的地方安全地传递NSMutableString?我能否将NSString赋值给NSMutableString?如果有问题,我该如何从NSMutableString中获取NSString以避免问题?
有点令人困惑。NSMutableString继承自NSString,但这是否意味着我可以在任何需要NSString的地方安全地传递NSMutableString?我能否将NSString赋值给NSMutableString?如果有问题,我该如何从NSMutableString中获取NSString以避免问题?
是的,你可以把NSMutableString
传递给NSString
。但是请注意,如果你将它传递给的对象存储了对这个对象的引用,它会“看到”你对可变字符串对象所做的所有更改。这并不总是理想的。
不可能。如果你有一个指向NSString
的NSMutableString
指针,并调用了appendString:
,那么该对象不知道如何处理这个调用。
(前两个是面向对象多态性基础)
如果你想从可变字符串得到一个不可变字符串,请使用[mutableString copy]
。