-2

このコードがあるとします

NSMutableString *object;
[object setString:@"myVar"];

後で object を var 名として使用するにはどうすればよいですか?

つまり...

[object.string someMethod];

someMethod は myVar オブジェクト (オブジェクトの文字列テキスト) で呼び出されます。

これは可能ですか?

4

2 に答える 2

5

Cocoa では、 Key-Value Codingを使用してプロパティとフィールドにアクセスできます。(変更可能かどうかに関係なく) にプロパティの名前がある場合NSString、その文字列を使用して、オブジェクトから対応するプロパティの値を取得できます。

MyObject *myObj = ...
NSMutableString *varName;
[varName setString:@"myVar"];
[myObj valueForKey:varName];
于 2013-06-22T10:20:49.543 に答える
1

あなたの質問は明確ではありません。おそらくあなたはNSClassFromStringメソッドを探しているでしょう。

クラスメソッドの場合someMethodは、次を使用できます。

[NSClassFromString(object) performSelector:@selector(someMethod)];
于 2013-06-22T10:14:44.883 に答える