Cocoa: NSMutableString gives warning with stringValue

It works:

NSString *myVar = @"whatever"; 

NSDecimalNumber *myNum = [NSDecimalNumber decimalNumberWithString:@"10"];

myVar = [myNum stringValue];

This version with a mutable string generates a warning "assignment from a separate Objective-C type":

NSMutableString *myVar = [NSMutableString stringWithString:@"whatever"];  //UPDATE: CORRECTED CODE

NSDecimalNumber *myNum = [NSDecimalNumber decimalNumberWithString:@"10"];

myVar = [myNum stringValue];

In both cases, stringValue returns NSCFString. The optional NSString variable does not care, modifies the NSMutableString.

PS someone will add tags for NSMutableString and stringValue.

+5
source share
3 answers

-stringValue autoreleased NSString, . , , (btw, ):

NSMutableString* tStr = @"lala";
[tStr appendString:@"lalala"]; // CRASH! Attempting to mutate immutable object

- :

NSMutableString* tStr = [NSMutableString stringWithString:@"lala"];
[tStr appendString:@"lalala"]; // OK 
+6

[myNum stringValue] NSString, NSMutableString, .

myVar (, ), , .

+4

, NSMutableString *. , , :

NSString *immutableStr = @"Mayonnaise";
NSMutableString *mutableStr = immutableStr;

( ). , NSMutableString * NSString *. , NSMutableString * , NSString * , , NSMutableString, , , , NSMutableString.

0

All Articles