3

resultLabelですUILabel。では、なぜですか

 resultLabel.Text= @"";

エラーを出さない?する必要がありますresultLabel.text

洞察をありがとう。

4

1 に答える 1

7

プロパティのデフォルトのセッター関数foosetFoo:、最初の文字を大文字にしたものです。したがって、両方の行

resultLabel.text = @"";
resultLabel.Text = @"";

同じコードを生成する

[resultLabel setText:@""];

これは、setter関数でのみ機能し、getterでは機能しません。

NSString *x = self.text; // --> x = [self text]
NSString *x = self.Text; // --> x = [self Text]

結果として、最初の文字の場合にのみ異なる2つの読み取り/書き込みプロパティを持つことはできません。これにより、コンパイラエラーが生成されます。

@property (nonatomic, strong) NSString *text;
@property (nonatomic, strong) NSString *Text;

self.text = @"foo";
// error: synthesized properties 'text' and 'Text' both claim setter 'setText:'
于 2013-03-14T14:06:06.323 に答える