1、重载:函数名相同,但函数的定义不同。编译系统会根据实参的类型和个数选择匹配度最高的函数进行调用。
重载的过程规律(执行顺序如下):
(1)首先会查找普通函数,寻找和使用函数名和参数类型最匹配的函数,如果找到则调用;
(2)若普通函数没有,则在函数模板中查找,将模板实例化,若和调用的函数匹配,则调用该函数模板;
(3)若经过上述两步还是未能找到,则可以通过类型转换转换进行参数匹配的函数重载,如果转换后能匹配则调用。
上述就是重载函数的过程,如果到最后一步还未能找到匹配的函数,则会产生调用错误;若有多个可以匹配则会产生二义性。
2、函数模板重载的分类:
(1)函数模板可以和函数模板进行重载;
(2)函数模板可以和显示特化后的模板进行重载;
(3)函数模板和普通函数的重载。
扫描二维码关注公众号,回复:
9595348 查看本文章