I have a bunch of variables named index1, index2, ..., indexn. I want to calculate i = array[index1] + array[index2] + ... + array[indexn].
I heard that I can do that in a loop, getting the current variable name from the loop index. How can I do that?
views:
49answers:
2
A:
Sorry, this is not possible in objective-c. It works for example in php.
There are ways to get objects by name if your data model allows for this, but in general variable names cannot be synthesized by name.
Eiko
2010-07-02 10:28:28
So what about `valueForKey`?
Robert
2010-07-02 10:30:23
This works only if you are using key value coding (KVC) to hold your variables. I think they are just plain ints in your code and not KVC compliant properties. May think about refactoring them into an array.
Eiko
2010-07-02 10:40:22
+2
A:
Instead of having individual variables like this:
int index1, index2, index3, ...indexN:
you should consider using an array of indices:
int index[N];
and then you can sum in a loop, e.g.
sum = 0;
for (i = 0; i < N; ++i)
{
sum += array[index[i]];
}
Paul R
2010-07-02 10:48:28