【C++】如何理解函数重载【1】--函数重载的基本概念

举报
王博Kings 发表于 2020/12/30 00:52:17 2020/12/30
【摘要】 目录 1.函数多态 2.函数重载 2.1函数重载的关键 2.2参数数目或参数类型不同,特征标也不同,举例print 3 使用函数重载有可能忽略的错误 3.1 强制转换可选择过多,C++拒绝这种函数调用! 3.2 一些看起来彼此不同的特征标是不能共存的 3.3 匹配函数时,并不区分const和非const变量 3.4 是特征标不同,而不是函数类型不同!  ...

目录

1.函数多态

2.函数重载

2.1函数重载的关键

2.2参数数目或参数类型不同,特征标也不同,举例print

3 使用函数重载有可能忽略的错误

3.1 强制转换可选择过多,C++拒绝这种函数调用!

3.2 一些看起来彼此不同的特征标是不能共存的

3.3 匹配函数时,并不区分const和非const变量

3.4 是特征标不同,而不是函数类型不同!


 1.函数多态

函数多态(函数重载)能让您使用多个同名的函数。函数多待允许函数有多种形式。

2.函数重载

指的是可以由多个同名的函数,对名称进行了重载,两个术语指的是一回事。通过函数重载,设计一系列函数它们完成相同的工作,但是使用不同的参数列表。

2.1函数重载的关键

函数的参数列表--又称函数特征标(function signature),指的是函数的参数个数和参数类型以及排列顺序

2.2参数数目或参数类型不同,特征标也不同,举例print

void print (const char * str, int width);

void print (double d, int width);

void print (long l, int width);

void print (int i, int width);

void print (const char *str);

如何使用呢?

print ("Pancakes" , 15);

print (1999.0, 10);

print (1999L, 15);

print (1999, 12);

print("Syrup");

3 使用函数重载有可能忽略的错误

3.1 强制转换可选择过多,C++拒绝这种函数调用!

3.2 一些看起来彼此不同的特征标是不能共存的

3.3 匹配函数时,并不区分const和非const变量

3.4 是特征标不同,而不是函数类型不同!

(8.4笔记) 

文章来源: kings.blog.csdn.net,作者:人工智能博士,版权归原作者所有,如需转载,请联系作者。

原文链接:kings.blog.csdn.net/article/details/93224375

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。