Boost logo

Boost Users :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2005-03-16 07:06:20


Ian McCulloch wrote:
>
> Yes, if you want to forward to a function but you don't know if it
> takes arguments by value or const reference.

It doesn't matter. When you forward, you pass to result_of the exact types
of the arguments you are supplying in the function (object) call, with a
reference when the argument is an lvalue.

int x;
long y;
int const z;
int g();
int & h();

f(x, y); // result_of<F(int&, long&)>
f(1, x); // result_of<F(int, int&)>
f(z, 4); // result_of<F(int const&, int)>
f( g(), h() ); // result_of<F(int, int&)>

What is 'f' and how it takes its arguments in the cases above does not
affect how result_of is used.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net