我有一个班级Payroll
,我正在尝试将另一个班级Employee
的实例存储在NMutableArray
中,我将其初始化为:{/ p>
array = [[NSMutableArray alloc] init];
我的Employee
课程包含NSMutableStrings
个变量,其中包含有关每位员工的信息。
我的Payroll
类有两种我正在使用的方法。第一种方法获取employee类的实例,然后将它们放在我的NSMutableArray
中,并且工作正常。
我遇到的问题是,当我在第一个方法中访问我放入数组的对象时,在我的第二个方法中,NSMutableStrings
我得到的是一堆随机数,这些数字并不接近我的期望。
我的NSMutableArray在我的Payroll.h
文件中声明为:
@property (nonatomic, retain) NSMutableArray* array;
我的第一个方法只包含一个看起来像这样的while循环:
while(next == true)
{
Employee* emp = [[[Employee alloc] init] retain];
//set values of Employee class
[array addObject:emp];
}
我的第二种方法如下:
for(int i = 0; i < [array count]; i++)
{
Empoyee* emp = [array objectAtIndex: i];
NSLog(emp->name);
}
Payroll.h
看起来像这样:
@interface Payroll
{
bool next;
}
@property (nonatomic, retain) NSMutableArray* array;
-void(getEmployee);
-void(doStuff);
@end
Employee.h
看起来像这样:
@interface Employee : NSObject
{
NSMutableString* name;
}
@end
我是objective-c的新手,所以任何帮助都会非常感激。
答案 0 :(得分:0)
为什么使用->
解除引用运算符。由于您的员工似乎是一个对象,请尝试使用emp.name。