ここに表示されるエラーを解決できないようです:「互換性のない型 'void' から 'NSMutableString *__strong' に割り当てています」。追加しようとしている配列文字列値は NSArray 定数です。
NSMutableString *reportString
reportString = [reportString appendString:[reportFieldNames objectAtIndex:index]];
ここに表示されるエラーを解決できないようです:「互換性のない型 'void' から 'NSMutableString *__strong' に割り当てています」。追加しようとしている配列文字列値は NSArray 定数です。
NSMutableString *reportString
reportString = [reportString appendString:[reportFieldNames objectAtIndex:index]];
appendString
void
メソッドです。あなたはおそらく探している
reportString = [NSMutableString string];
[reportString appendString:[reportFieldNames objectAtIndex:index]];
append
初期化と組み合わせることで、完全に回避できます。
reportString = [NSMutableString stringWithString:[reportFieldNames objectAtIndex:index]];
NSString
割り当てが必要な別の追加方法があることに注意してください。
NSString *str = @"Hello";
str = [str stringByAppendingString:@", world!"];
appendString は、メッセージの送信先の文字列に文字列を既に追加しています。
[reportString appendString:[reportFieldNames objectAtIndex:index]];
それで十分なはずです。Xcode 4.5 で開発する場合は、次のこともできることに注意してください。
[reportString appendString:reportFieldNames[index]];
これを試して:
NSMutableString *reportString = [[NSMutableString alloc] init];
[reportString appendString:[reportFieldNames objectAtIndex:index]];
appendString は void メソッドです。それで:
NSMutableString *reportString = [[NSMutableString alloc] init];
[reportString appendString:[reportFieldNames objectAtIndex:index]];
NSMutableString メソッドappendString:
は何も返さないため、存在しない戻り値を割り当てることはできません。それがコンパイラが伝えようとしているものです。NSString が必要か、または戻り値を割り当てずstringByAppendingString:
に使用したいだけです。[reportString appendString:[reportFieldNames objectAtIndex:index]];
(もちろん、reportString
最初に入力する文字列を作成する必要がありますが、完全を期すために質問から除外しただけだと思います。)