迭代通过对象的数组和在Objective-C
添加值我有对象的简单阵列..迭代通过对象的数组和在Objective-C
NSEnumerator * enumerator = [someArray.childItems objectEnumerator];
ChildItem* childItem;
while(childItem = [enumerator nextObject])
{
someArray.total = someArray.total + childItem.SomeAverage;
}
someArray.total是浮动,所以是childItem.SomeAverage。 当我尝试编译,我得到:
无效操作数为二进制+(有“浮*”和“浮动*”)
这是什么意思? 在此先感谢
这意味着你的论点都是float *
,而不是浮动,你不能像这样添加指针。 :)(虽然你可以减去指针,但除非你想进入它,否则这是一个不同的讨论。)你还没有显示出这些声明很难说更多。
P.S.您不需要在“现代”Obj-C(2.0)中使用该枚举器语法。你可以写:
for (ChildItem * childItem in someArray.childItems) {
...
}
的声明,我认为你的意思是ObjC 2.0清晰(现代可能会产生混淆,因为它通常是指在运行时,你可以同时在现代使用objc 2.0和传统运行时)。此外,您需要在此处使用'for'关键字,而不是使用while。 – 2010-08-21 01:19:56
更正了错字,谢谢。 – 2010-08-21 01:25:06
只是你可以发布childItems – ennuikiller 2010-08-21 01:19:04