码迷,mamicode.com
首页 > 编程语言 > 详细

C++重载的多义

时间:2016-03-28 11:50:17      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:

重载的条件:函数参数类型和个数不同,返回值不做为考虑。例:

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++重载的多义

标签:

原文地址:http://www.cnblogs.com/tinaluo/p/5328371.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!