Перегруженный оператор присваивания сложения в C++ для двух/более двух объектов?

Я перегрузил оператор + вот так

class sample
{
private : 
  int x;
public :
  sample(int x1 =0)
  {
    x = x1;
  }

  sample operator+(sample s);
};

sample sample::operator+(sample s)
{
  x = x + s.x;
  return *this;
}

int  main()
{
  sample s1(10);
  sample s2;
  s2 = s2 + s1;
  return 0;    
}

Это правильно? Мой вопрос: если я хочу добавить два разных образца объектов, как я перегружу оператор; например, для s = s1 + s2;

Мне хочется сделать s = s + s1 + s2с существующей реализацией.

15
задан Raulp 22 June 2012 в 18:34
поделиться