2011-03-03 27 views
0

我有一个自定义类问题与自定义对象的构件

@interface XYZ : NSObject 

{ INT总和; .... }

@property(nonatomic,assign)int sum; .....

在我的方法,我初始化一个新的类如:

XYZ *myClass = [[XYZ alloc] init]; 

然后在在该方法循环,​​我给你一笔基于一个条件的值:

if( ) 

{ myClass.sum = val; (@“%d”,myClass.sum); }

NSLog打印正确的值。 (这里的价值= 6)

现在,一旦我出的for循环,我再次使用相同的NSLog声明打印和的值:

NSLog(@"%d", myClass.sum); 

这一次的值是0。我从来不明白为什么。认为值没有保留,我甚至使用了NSString和NSNumber数据类型,但是我没有取得任何成功。

这是我很想念的东西吗?请指教。

感谢您的任何帮助提前

+0

您是否在以后的for循环迭代中将它赋值为0? – FreeAsInBeer 2011-03-03 18:44:14

+0

你确定你在myClass中有相同的实例吗?试试NSLog(@“%@ value:%i”,myClass,myClass.sum);并查看指针是否显示相同的地址。 – Kay 2011-03-03 18:55:38

回答

0

感谢您的快速回复,但我发现了这个问题。

我信任外部数据只有一个值为“总和”,但有一个重复,并将其设置为零。

我按照文档使用int,NSString和NSNumber数据类型。

现在没问题。

再次感谢您的帮助。

Subbu