以下代碼導致我出現一些問題。第三行會導致程序崩潰......在我第一次在程序中逐步完成但不知何故發生時,它不會發生。如果我評論第三行,程序運行順利。Objective-c字符串追加導致異常
NSString *myRequestString = @"text";
int i = 1;
myRequestString = [myRequestString stringByAppendingString:[NSString stringWithFormat: @"t=%d", i]];
該代碼導致該異常:
*** -[CFString release]: message sent to deallocated instance 0xb4c43fe0
在一個側面說明,任何人都可以告訴我如何連接在Objective-C字符串像任何其他正常的語言......我可以」相信沒有連接操作符。
任何和所有的幫助,非常感謝。
你知道,你可以使用'-stringByAppendingFormat:'。 – kennytm 2010-03-29 17:55:21
感謝您的提示,切換它,但我仍然得到例外。 – 2010-03-29 18:05:43
您確定該異常來自該行,還是在您的代碼中的其他位置?它表示在someString已被解除分配(參考計數爲0)之後,您(或某物)正在調用''someString release''。 此外,由於'stringByAppendingString'返回'NSString'的* new *實例,因此您正在泄漏'myRequestString'的原始實例。你可以用'myRequestString = [[myRequestString autorelease] stringByAppending ......]解決這個問題' – 2010-03-29 18:17:13