当前位置: 首页 > wzjs >正文

推广运营公司网站无锡企业建站程序

推广运营公司网站,无锡企业建站程序,教学网站建设目的,自己建立公司网站📌 一、什么是函数重载 函数重载:同一个作用域内可以定义多个 函数名相同、但参数列表不同的函数。 编译器会根据调用时传入的参数个数、类型、顺序进行区分,自动匹配最合适的函数。✅ 作用: 提高代码可读性;让多个相似…

📌 一、什么是函数重载

函数重载:同一个作用域内可以定义多个 函数名相同、但参数列表不同的函数。

编译器会根据调用时传入的参数个数、类型、顺序进行区分,自动匹配最合适的函数。


✅ 作用:

  • 提高代码可读性;
  • 让多个相似功能的函数统一名称,接口更简洁;
  • 是 C++ 支持“多态”的基础之一(静态多态)。

📚 二、函数重载的条件

✅ 必须不同的有:

  • 参数个数不同
  • 参数类型不同
  • 参数顺序不同(类型顺序)
void print(int a);
void print(double a);           // 类型不同
void print(int a, int b);       // 参数个数不同
void print(double a, int b);    // 类型顺序不同

❌ 不构成重载的情况:

  1. 仅返回值不同
int sum(int a);     // 合法
double sum(int a);  // ❌ 不合法:返回值不同但参数完全相同
  1. 仅参数名不同
int sum(int x);     // 合法
int sum(int y);     // ❌ 不合法:只是名字不同

🔧 三、函数重载示例

#include <iostream>
using namespace std;void print(int a) {cout << "整型: " << a << endl;
}void print(double a) {cout << "浮点型: " << a << endl;
}void print(string a) {cout << "字符串: " << a << endl;
}int main() {print(10);          // 输出:整型: 10print(3.14);        // 输出:浮点型: 3.14print("Hello");     // 输出:字符串: Helloreturn 0;
}

🚫 四、与默认参数的冲突

函数重载与默认参数可能导致二义性。

void func(int a);
void func(int a, int b = 10);func(5);  // ❌ 二义性:编译器不知调用哪一个

✅ 建议避免重载函数中出现过多默认参数,或设计时注意不冲突。


🧠 五、函数重载 + const 的区分

void show(int a);
void show(const int a);  // ❌ 与上函数视为相同,重定义

✅ 但对于 指针/引用 参数,const 可形成重载:

void display(int& x);       // 非 const 引用
void display(const int& x); // const 引用,合法重载

🔁 六、函数重载与 inline / static 的关系

  • inlinestatic 不影响重载判断;
  • 判断重载仅看:参数列表是否不同

🧱 七、重载构造函数(构造函数重载)

构造函数也可以重载,根据参数不同创建不同初始化方式。

class Box {
public:Box() { cout << "默认构造" << endl; }Box(int l) { cout << "单参数构造: " << l << endl; }Box(int l, int w) { cout << "双参数构造: " << l << ", " << w << endl; }
};int main() {Box b1;          // 默认构造Box b2(10);      // 单参Box b3(10, 20);  // 双参return 0;
}

⚠️ 八、函数模板与重载的优先级

当普通函数与函数模板都能匹配时,优先调用普通函数

void show(int a) {cout << "普通函数" << endl;
}template<typename T>
void show(T a) {cout << "模板函数" << endl;
}int main() {show(5);  // 调用普通函数show(3.14); // 调用模板函数
}

📝 九、小结

项目是否影响重载
参数个数不同✅ 是
参数类型不同✅ 是
参数顺序不同✅ 是
返回值不同❌ 否
参数名不同❌ 否
默认参数冲突⚠️ 可能引起二义性
const 修饰(非引用)❌ 无效
const 修饰(引用/指针)✅ 有效

🎯 建议与实践

  • 使用函数重载可以统一接口,增强代码可读性;
  • 避免默认参数引起的二义性;
  • 对于模板编程,配合重载使用更灵活;
  • 若设计多个功能类似函数,考虑重载而非新命名。


文章转载自:

http://PaNeeVLr.dmcqy.cn
http://jvdNGPdq.dmcqy.cn
http://aHB1jcXP.dmcqy.cn
http://BSTtVzA9.dmcqy.cn
http://T5KNKJpH.dmcqy.cn
http://2ZZxiA8k.dmcqy.cn
http://5RY6fI31.dmcqy.cn
http://rTWdVzNT.dmcqy.cn
http://2jn5X3Pu.dmcqy.cn
http://OtVFw2FG.dmcqy.cn
http://dFPOx2yx.dmcqy.cn
http://xa4fQmd9.dmcqy.cn
http://3K3jmi2V.dmcqy.cn
http://a4Il0It0.dmcqy.cn
http://3M4e7EdO.dmcqy.cn
http://Gp19KG5v.dmcqy.cn
http://oRPsW7OW.dmcqy.cn
http://KgJVo3jx.dmcqy.cn
http://NLEUEW0I.dmcqy.cn
http://xqLRdAuu.dmcqy.cn
http://eIEX54Ny.dmcqy.cn
http://5lHY4IbM.dmcqy.cn
http://OOw4i0g2.dmcqy.cn
http://swRTM1ZV.dmcqy.cn
http://wy4GgzFF.dmcqy.cn
http://5O3IU53W.dmcqy.cn
http://ehpRrS12.dmcqy.cn
http://uIpDtut1.dmcqy.cn
http://pED9UzGm.dmcqy.cn
http://lg5vPgIt.dmcqy.cn
http://www.dtcms.com/wzjs/665416.html

相关文章:

  • 仿造网站用侵权吗南海区建设局网站首页
  • 网站开发用哪些技术怎么样推广最有效最快速
  • wordpress 多站点模式 帐号是通用的么2019做网站赚钱么
  • 商城网站后台模板网站开发的路径是什么
  • dw个人网站设计沧州百胜信息技术有限公司
  • 南宁建站公司有哪些池州微信网站建设
  • 永川网站制作联系电话上海网站建设的意义
  • 西樵网站制作公司数码产品网站建设计划书
  • 网站建设哪家便宜电商网店培训
  • 搞定设计网站做的图怎么下载不了网站建设服务费计入什么科目
  • 跨境电商自己做网站卖衣服跨境电商需要投资多少
  • 淘宝网那样的网站模板东莞短视频推广是哪个
  • 宜春公司做网站社交系统开发
  • 公司网站建设是哪个部门的事情大连建设工程有限公司
  • 一个主机多个网站网站做360推广需要什么条件
  • 佛山新网站制作市场wordpress绑定百家号
  • 购物网站开发英文文献洛可可设计公司老板
  • 具有品牌的做网站西安网络科技有限公司
  • 上海大学生兼职做网站上海开发小程序和app的公司
  • 珠海网站建设 金蝶搜狐最大的门户网站
  • 南乐网站建设电话网站做成小程序
  • 手机网站开发调用照片温州快建网站
  • 企业网站类型主要包括广州黄埔区建设局网站局
  • 高新网站建设多少钱wordpress 变量
  • 环保网站源码公司logo图案大全
  • 可遇公寓网站哪个公司做的做徽标的网站
  • 网站建设用什么语言开发分销系统怎么做
  • 庆阳工程建设网站做的好的电商网站项目
  • 广州建设网站公司简介做美食网站有哪些
  • 建筑人才网官方网站中国建筑科学院有限公司认证中心宿迁网站网站建设