
如1+1 对应的是 int型
1.0+1.0 对应的是float型
两个式子调用的程序是不一样的,但用的都是同一个运算符,这就是重载
你自己写的类也可以用到这些运算符, 只要重载你用到的运算符自己写算法就可以了
都不是,是引用,为了实现这种目的: Sampel a,b,c a=b=c
Sample &Sample::operator=(Sample s)
是这个意思:Sample& Sample::operator=(Sample s),是函数
Sample &operator=(Sample)的定义,Sample::说明是类Sample的成员函数
c语言写重载函数:
首先明确重载函数的定义:在相同的声明域中的函数名相同的,而参数表不同的,即通过函数的参数表而唯一标识并且来区分函数的一种特殊的函数。
当将要定义一组函数,使它们执行一系列的 *** 作,但是它们是应用在不同的参数类型上的。此时可以选择重载函数。
例如:
上面的三个函数都可以大概地说成判断一组数中的最大值,对于函数的用户来说,他们并不关心函数定义的细节,也就是说他们不关心判断两个整数的大小和判断数组(vector容器)数的大小应该使用不同的函数,而对于程序的设计者来说这可是不得不想到的。程序员必须记住并查找每个函数名。而函数的重载把程序员从这种问题的复杂性中解放了出来,C++提供了这种支持。
上面的三个比较大小的函数可以定义成:
通过参数就可以一眼分辨不同的函数。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)