Giriş
C++'ta kullanılabilen Compound Assignment Operators toplam 10 tane. Bütün metodlar gibi bu operatörler istenirse virtual olabiliyorlar.
C++'ta kullanılabilen Compound Assignment Operators toplam 10 tane. Bütün metodlar gibi bu operatörler istenirse virtual olabiliyorlar.
Addition Assignment
Metodun imzası şuna benzer olmalı. Kendisini değiştirmeli ve kendine referans dönmeli.
BigInt& BigInt::operator+=(BigInt const& other)
Örnek
Şöyle yaparız.
Şöyle yaparız.
Vector& operator+=(Vector const& v)& {
x += v.x;
y += v.y;
return *this;
}
friend Vector operator+(Vector lhs, Vector const& v) {
lhs+=v;
return std::move(lhs); // move is redundant yet harmless in this case
}
Vector& operator-=(Vector const& v)& {
x -= v.x;
y -= v.y;
return *this;
}
friend Vector operator-(Vector lhs, Vector const& v) {
lhs -= v;
return std::move(lhs); // move is redundant yet harmless in this case
}
Hiç yorum yok:
Yorum Gönder