在C++中,可以通過重載運算符來改變該運算符在特定類型的操作數上的行為。下面是一個簡單的示例,演示如何重載加號運算符來實現向量的加法:
#include <iostream>
class Vector {
public:
double x, y;
Vector(double x, double y) : x(x), y(y) {}
Vector operator+(const Vector& v) const {
return Vector(x + v.x, y + v.y);
}
};
int main() {
Vector v1(1, 2);
Vector v2(3, 4);
Vector result = v1 + v2;
std::cout << "Result: (" << result.x << ", " << result.y << ")" << std::endl;
return 0;
}
在上面的示例中,我們定義了一個名為Vector
的類,該類有兩個成員變量x
和y
,并在類中重載了加號運算符+
。在operator+
函數中,我們定義了對兩個Vector
對象進行加法的操作,并返回一個新的Vector
對象作為結果。
在main
函數中,我們創建了兩個Vector
對象v1
和v2
,然后使用重載的+
運算符來執行向量的加法操作,并將結果打印出來。
通過運算符重載,我們可以自定義類在進行運算時的行為,使得代碼更加靈活和易讀。