Boost logo

Ublas :

From: Andreas Klöckner (lists_at_[hidden])
Date: 2008-04-28 11:41:16


On Montag 28 April 2008, Johan Compen wrote:
> Hi,
>
> I'm using the vector and matrix classes in Boost to convert some
> Matlab code to C++. I'm having troubles with this code:
>
> typedef boost::numeric::ublas::vector<double> Vector_t;
> Vector_t a(3);
> a(0) = 0; a(1)=1; a(2)=2;
>
> Vector_t b = a * 0.5; //works
> Vector_t c = a + 0.5; //compiler error
>
> error C2678: binary '+' : no operator found which takes a left-hand
> operand of type 'Vector_t' (or there is no acceptable conversion)
>
> How can I solve this? How can I add a constant value to each element
> in a vector?

c = a + scalar_vector<double>(a.size(), 0.5);

Andreas