5 May
2008
5 May
'08
1:58 p.m.
On Saturday 03 May 2008 09:12:01 pm Max wrote:
double d0, d1, d2, d3; boost::array<double &, 4> array = {{d0, d1, d2, d3}}; for(int i=0; i<4; i++) array[i] = i; assert(d2 == 2);
[snip]
If it won't take a long time, is it possible to rewrite the above code snnipet making use of boost.Ref?
#include <boost/array.hpp> #include <boost/ref.hpp> #include <cassert> int main() { typedef boost::reference_wrapper<double> double_ref_t; boost::array<double, 2> array; double_ref_t d0( array[0] ); double_ref_t d1( array[1] ); array[0] = 1.0; array[1] = 2.0; assert( d1 == 2.0 ); d0 += d1; assert( d0 == 3.0 ); }