{site_name}

{site_name}

🌜 搜索

C++ 中的重载运算符和重载函数允许我们定义具有相同名称但参数不同的多个函数和运算符

编程 𝄐 0
c++重载运算符==的两种方式,c++运算符重载语法,c++运算符重载 参数个数,c++运算符重载是什么意思,c++的重载运算符,c++重载=运算符
C++ 中的重载运算符和重载函数允许我们定义具有相同名称但参数不同的多个函数和运算符。这样就可以根据传递给它们的参数类型或数量的不同来调用不同的函数或运算符。

重载运算符通常使用 operator 关键字,后面跟着运算符的符号。例如,我们可以重载加号运算符来执行自定义的加法操作:

c++
class Vector {
public:
int x, y;

Vector(int x, int y) : x(x), y(y) {}

Vector operator+(const Vector& v) const {
return Vector(x + v.x, y + v.y);
}
};

int main() {
Vector a(1, 2), b(3, 4);
Vector c = a + b; // 调用重载的加号运算符
return 0;
}


在上面的示例中,我们定义了一个名为 Vector 的类,并重载了加号运算符,以便对两个向量执行加法操作。重载函数也能够通过函数名和参数列表进行区分。例如,我们可以重载 print 函数,以便根据参数的不同类型来打印不同的信息:

c++
void print(int n) {
std::cout << "Integer: " << n << std::endl;
}

void print(double d) {
std::cout << "Double: " << d << std::endl;
}

void print(const char* s) {
std::cout << "String: " << s << std::endl;
}

int main() {
print(42); // 调用 print(int)
print(3.14); // 调用 print(double)
print("Hello"); // 调用 print(const char*)
return 0;
}


在上面的示例中,我们定义了三个名为 print 的函数,并重载了它们,以便打印不同类型的参数。当使用不同类型的参数调用函数时,编译器会自动选择正确的函数进行调用。