2010-11-27 9 views
0
NSMutableString *mSt1 = [[NSMutableString alloc] stringWithString:asong.at]; 
      NSMutableString *mSt = [[NSMutableString alloc] stringWithString:[mSt1 substringWithRange: NSMakeRange (0, 2)]]; 
      NSMutableString *mSt2 = [[NSMutableString alloc] stringWithString:[mSt1 substringWithRange: NSMakeRange (5, 2)]]; 
      NSMutableString *str = [mSt appendString:mSt2]; 
      [songsHrs addObject:str]; 
      [mSt release]; 
      [mSt1 release]; 
      [mSt2 release]; 

をnsmutablestring別にnsmutableの文字列を追加します。それはカント我々は、ライン4番のエラーでエラーを取得

私を助けてください...

答えて

1
[mSt appendString:mSt2]; 
であるべきだとして、ボイド値無視されていません

このメソッドの戻り値の型はvoidです。 NSMutableString(この場合は)を呼び出すと変更されますが、何も返されません。

戻り値は期待しないでください。 NSMutableString *strを削除してそのまま使用してください。

[songHrs addObject:mSt]; 

文字列が可変であるため、文字列は単に変更されるだけです。結果を別の変数に保存する必要はありません。実際には、NSStringの代わりにNSMutableStringを使用するという全体のポイントです。

1

Squeegyがすでにappendについて書いたこと以外に、1,2行目と3行目も壊れているように見えます.stringWithStringではなくinitWithStringを呼び出すか、stringWithStringを使用しますがallocは使用しないでください。全体の構造は面倒ですが、実際には意味をなさないですが、これは恐らくテスト目的のためです。

+0

は、Squeegyの答えで動作しました。 – rockey

関連する問題