目录
前言
概述
函数重载
前言
最近浏览《Effictive C++》,突然发现:C语言不支持函数重载,C++能够支持这一特性。确实有点颠覆认知。看有关C++的书籍多一点的缘故吧!
概述
函数重载
在 C++ 中,函数重载是指可以定义多个同名函数,但它们的参数列表必须不同(包括参数类型、参数个数或参数顺序)。通过函数重载,我们可以使用相同的函数名来实现不同的功能。文章来源:https://www.toymoban.com/news/detail-834279.html
- 函数名相同:在函数重载中,函数名必须相同。
- 参数列表不同:函数重载通过参数列表的差异来区分不同的函数。参数列表包括参数的类型、个数和顺序。
#include <iostream> void print(int num) { std::cout << "Integer number: " << num << std::endl; } void print(double num) { std::cout << "Double number: " << num << std::endl; }
- 返回类型不同:C++ 不允许只根据返回类型的不同来进行函数重载。因为编译器无法仅根据返回类型来确定调用哪个函数。
#include <iostream> void print(int num) { std::cout << "Integer number: " << num << std::endl; } int print(int num) { std::cout << "Double number: " << num << std::endl; }
以上实例是无法编译通过的。文章来源地址https://www.toymoban.com/news/detail-834279.html
- 可以重载成员函数:在类中,成员函数之间也可以进行重载,遵循上述规则。
- const 成员函数:const 成员函数与非 const 成员函数可以进行重载。当对象为 const 时,会调用 const 成员函数;否则调用非 const 成员函数。
- 默认参数:函数重载中可以使用默认参数,但要注意默认参数的位置应该放在非默认参数的后面。
到了这里,关于漫谈C与C++(《Effictive C++》/关于函数重载)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!