Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/vector.cpp

    rb84d5d r2ededc2  
    328328    return false;
    329329  }
    330   delete(M);
    331330  Log() << Verbose(1) << "INFO: Line1a = " << *Line1a << ", Line1b = " << *Line1b << ", Line2a = " << *Line2a << ", Line2b = " << *Line2b << "." << endl;
    332331
     
    584583 * \return lhs + a
    585584 */
    586 const Vector& operator+=(Vector& a, const Vector& b)
     585Vector& operator+=(Vector& a, const Vector& b)
    587586{
    588587  a.AddVector(&b);
     
    595594 * \return lhs - a
    596595 */
    597 const Vector& operator-=(Vector& a, const Vector& b)
     596Vector& operator-=(Vector& a, const Vector& b)
    598597{
    599598  a.SubtractVector(&b);
     
    606605 * \return lhs.x[i] * m
    607606 */
    608 const Vector& operator*=(Vector& a, const double m)
     607Vector& operator*=(Vector& a, const double m)
    609608{
    610609  a.Scale(m);
     
    617616 * \return a + b
    618617 */
    619 Vector const operator+(const Vector& a, const Vector& b)
    620 {
    621   Vector x(a);
    622   x.AddVector(&b);
    623   return x;
     618Vector& operator+(const Vector& a, const Vector& b)
     619{
     620  Vector *x = new Vector;
     621  x->CopyVector(&a);
     622  x->AddVector(&b);
     623  return *x;
    624624};
    625625
     
    629629 * \return a - b
    630630 */
    631 Vector const operator-(const Vector& a, const Vector& b)
    632 {
    633   Vector x(a);
    634   x.SubtractVector(&b);
    635   return x;
     631Vector& operator-(const Vector& a, const Vector& b)
     632{
     633  Vector *x = new Vector;
     634  x->CopyVector(&a);
     635  x->SubtractVector(&b);
     636  return *x;
    636637};
    637638
     
    641642 * \return m * a
    642643 */
    643 Vector const operator*(const Vector& a, const double m)
    644 {
    645   Vector x(a);
    646   x.Scale(m);
    647   return x;
     644Vector& operator*(const Vector& a, const double m)
     645{
     646  Vector *x = new Vector;
     647  x->CopyVector(&a);
     648  x->Scale(m);
     649  return *x;
    648650};
    649651
     
    653655 * \return m * a
    654656 */
    655 Vector const operator*(const double m, const Vector& a )
    656 {
    657   Vector x(a);
    658   x.Scale(m);
    659   return x;
    660 };
     657Vector& operator*(const double m, const Vector& a )
     658{
     659  Vector *x = new Vector;
     660  x->CopyVector(&a);
     661  x->Scale(m);
     662  return *x;
     663};
     664
     665Vector& Vector::operator=(const Vector& src) {
     666  CopyVector(src);
     667  return *this;
     668}
    661669
    662670/** Prints a 3dim vector.
Note: See TracChangeset for help on using the changeset viewer.