$include_dir="/home/hyper-archives/boost-users/include"; include("$include_dir/msg-header.inc") ?>
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.