0

別のスクリプトから変数をインポートしようとしています! スクリプト blabla2.m で私は[listaDiOggetti addObject:strResult];

問題は"Use of undeclared identifier 'strResult'"

しかし、blabla2.hでインポートしています#import "blabla1.h"

そしてblabla1.hで私は:@property (retain, nonatomic) NSString *strResult;

blabla2 が blabla1 の変数を認識できないのはなぜですか?

4

1 に答える 1

1

Objective-C はオブジェクト指向言語であるため、Objective-C のクラスとプロパティを読みたいと思うかもしれません:宣言されたプロパティ

A@propertyは変数ではありません。クラス変数をカプセル化するのに役立つプロパティです。

//blabla1.h

@interface Blabla1 : NSObject {
    NSString *_strResult; //Class variable
}

@property (strong) NSString *strResult; //Property
@end

//blabla1.m
@implementation Blabla1

//setup Getter/Setter as strResult using _strResult
@synthesize strResult = _strResult; 

@end

したがって、クラス変数を定義したら、次のようなblabla1.hインスタンスを作成した後、プロパティを使用してアクセスできます。blabla1

Blabla1 *myBlabla1Obj = [Blabla1 alloc] init];
...
NSString *someString = [myBlabla1Obj strResult];
于 2012-08-31T17:56:39.947 に答える