C++重载的多义
Posted YuRi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++重载的多义相关的知识,希望对你有一定的参考价值。
重载的条件:函数参数类型和个数不同,返回值不做为考虑。例:
void f(int i); void f(double i);
一、float和double的情况:
void f(float i); void f(double i);
如果输入浮点数,不存在多义,将会调用void f(double i),因为:在C++中将浮点数转化为double类型。假如输入:10,则存在多义,因为编译器不知道如何转换。
二、char和unsigned char的情况
void f(unsigned char c); void f(char c);
如果输入:f(‘c‘)无多义,但是输入f(88)会产生多义。
三、函数用缺省参数产生的多义
void f(in i,int j=1); void f(int i);
输入f(20),会产生多义。
以上是关于C++重载的多义的主要内容,如果未能解决你的问题,请参考以下文章