C++函数重载调用类中函数
时间: 2023-06-13 16:09:18 浏览: 117
在C++中,函数重载是指在同一作用域内定义多个函数,它们具有相同的名称但是参数列表不同。当调用函数时,编译器会根据参数列表匹配调用对应的函数。
对于类中的函数重载,我们可以通过对象名或指向对象的指针来调用。例如,假设我们有一个名为`MyClass`的类,其中定义了两个名为`func`的函数,一个接受一个整数参数,另一个接受一个浮点数参数:
```cpp
class MyClass {
public:
void func(int x) {
std::cout << "Called func(int) with parameter " << x << std::endl;
}
void func(float y) {
std::cout << "Called func(float) with parameter " << y << std::endl;
}
};
```
那么我们可以这样调用这些函数:
```cpp
MyClass obj;
obj.func(42); // 调用 func(int)
obj.func(3.14f); // 调用 func(float)
MyClass *ptr = &obj;
ptr->func(42); // 调用 func(int)
ptr->func(3.14f); // 调用 func(float)
```
注意,在使用指针调用类成员函数时,我们使用了箭头运算符`->`而不是点运算符`.`。这是因为`ptr`是一个指向对象的指针,需要使用箭头运算符来访问对象的成员函数。
阅读全文