Objective c 另一类的访问变量
如何访问其他类的变量?我就是这样实现的Objective c 另一类的访问变量,objective-c,variables,properties,getter-setter,Objective C,Variables,Properties,Getter Setter,如何访问其他类的变量?我就是这样实现的 @interface Class1 :NSObject { NSString*数据; } @属性(非原子,保留)NSString*数据 @implementation Class1 @synthesize Data; someMethod{ self.Data = @"something"; } 在第2类中: @implementation Class2 someMethodOfClass2{ Class1 *c=[[Class1 alloc]init
@interface Class1 :NSObject {
NSString*数据;
}
@属性(非原子,保留)NSString*数据
@implementation Class1
@synthesize Data;
someMethod{
self.Data = @"something";
}
在第2类中:
@implementation Class2
someMethodOfClass2{
Class1 *c=[[Class1 alloc]init];
[c someMethod];
NSString *str=c.Data;
}
我在Class2中得到的c.数据为null。我做错什么了吗
-----------myClass1--------------
@接口管理器:NSObject{
NSString*数据;
}
@属性(非原子,保留)NSString*数据
@implementation Class1
@synthesize Data;
someMethod{
self.Data = @"something";
}
-(void)获取数据
@结束
@实施经理
@综合数据
-(void)获取数据{
self.Data=@“响应”;
}
--------myClass2-------------
@接口搜索:NSObject{
}
-(void)searchForItems:(NSString*)查询
@结束
@实现搜索
-(void)searchForItems:(NSString*)查询{
apimager*apimager=[[apimager alloc]init];
[apiManager获取数据];
NSLog(@“%@,[apiManager数据]);
}您可能应该使用
self.Data=@“something”
而不是self.Data=“something”您可能应该使用self.Data=@“something”
而不是self.Data=“something”在Objective-C中,您必须使用@“something”
而不是“something”
。另外,您是否缺少变量声明?在您的@界面中
您应该执行类似于NSString*Data的操作
在Objective-C中,您必须使用@“某物”
而不是“某物”
。另外,您是否缺少变量声明?在@界面中
您应该执行类似于NSString*Data
的操作,很抱歉我没有编写完整的代码。这只是一个摘录。self.Data=@“Somethin”是正确的,并且在接口中声明了“Data”。您仍然缺少几个部分(这两个方法都应该标记为这样并包含在接口中),但除此之外,您的代码没有明显的问题。您可能需要发布一个更完整的示例;)我已经添加了我的代码。你能告诉我哪里出错了吗?不幸的是,我仍然不明白为什么它应该是空的。NSLog打印什么?问题已解决。我在做一种多线程。无论如何,谢谢Thomasorry,我没有写完整的代码。这只是一个摘录。self.Data=@“Somethin”是正确的,并且在接口中声明了“Data”。您仍然缺少几个部分(这两个方法都应该标记为这样并包含在接口中),但除此之外,您的代码没有明显的问题。您可能需要发布一个更完整的示例;)我已经添加了我的代码。你能告诉我哪里出错了吗?不幸的是,我仍然不明白为什么它应该是空的。NSLog打印什么?问题已解决。我在做一种多线程。无论如何,谢谢托马斯