2010-08-27 3 views

Répondre

2

Comment sur str = nil?

Vous devez d'abord [str release] afin de libérer la mémoire utilisée par la chaîne en cours.

0

Vous pouvez utiliser str = nil;

Mais dans presque tous les cas, je recommanderais probablement utiliser NSString au lieu de NSMutableString. Lorsque vous affectez votre variable @ "", cela instancie une nouvelle chaîne vide (NSString) et l'affecte à str, d'où l'erreur de type.

Il est presque toujours plus facile de créer simplement une nouvelle chaîne à partir de votre ancienne chaîne en utilisant quelque chose comme [NSString stringByAppendingString:@" new string content"] ou [NSString stringByAppendingFormat:@"%@ stuff %@", otherString1, otherString2].

1

Si vous êtes désireux de mettre juste à une chaîne vide, procédez comme suit:

NSMutableString * str;

// ajouter quelques chaînes // ...

[str setString: @ ""];

Sinon, si vous voulez le libérer et le mettre à null:

[version str], str = nil;

Remarque: Les chaînes constantes telles que @ "" utilisent des chaînes de caractères spéciales. Vous pouvez regarder plus loin, mais cela n'alloue pas réellement une nouvelle chaîne à chaque fois.

Questions connexes