首页 > 其他分享 >6.函数重载(重点)

6.函数重载(重点)

时间:2022-08-24 10:25:37浏览次数:53  
标签:函数 int char 参数 func 重载 重点

1.函数重载是:允许函数名相同,这种现象叫函数重载

2.函数重载的作用:是为了方便使用函数名

3.函数重载的条件:同一个作用域,参数的个数不同,参数的顺序不同,参数的类型不同

//参数的个数不同
void func()
{
	cout << "func()" << endl;
}

void func(int a)
{
	cout << "func(int a)" << endl;
}

//参数的类型不同
void func(char c)
{
	cout << "func(char c)" << endl;
}
//参数的顺序不同
void func(int a, double b)
{
	cout << "func(int a, double b)" << endl;
}
void func(double b, int a)
{
	cout << "func(double b, int a)" << endl;
}

4.调用重载函数的注意:

严格的类型匹配,如果类型不匹配,那么尝试转换,转换成功就掉用,失败就报错

void test01()
{
	int a = 10;
	double b = 3.14;

	func();
	//func(b);// err double转换不了成为int或char
	func(a, b);
	func(b, a);
	char c = 'c';
	func(c);//char转换int成功,调用int参数的函数
}

5.函数重载和函数的默认参数一起使用,需要注意二义性问题

//函数重载和函的默认参数一起使用
void myfunc(int a, int b = 0)
{
	cout << "myfunc(int a, int b = 0)" << endl;
}

void myfunc(int a)
{
	cout << "myfunc(int a)" << endl;
}

void test02()
{
	//myfunc(10); err,二义性问题,不知道调用哪个函数
}

6.函数的返回值不作为函数重载的条件

编译器是通过你调用函数时,传入的参数来判断调用重载的哪个函数,我们调研函数时不需要写返回值,所以返回值不能成为函数重载的条件

标签:函数,int,char,参数,func,重载,重点
From: https://www.cnblogs.com/codemagiciant/p/16618910.html

相关文章

  • ref函数
    <template><div><h1>vue3</h1><span>{{name}}-{{age}}</span><button@click="refname">函数修改name</button><button@click="name='刚'">......
  • reactive函数
    <template><div><h1>vue3</h1><span>{{info.name}}-{{info.age}}</span><button@click="infobtn">修改info</button></div></template><scrip......
  • 基础函数
    Oracle函数:nvl(test,exp1):当test为空时,取exp1的值,否则就取test的值selectnvl('abc','bb')fromdual;--123selectnvl(null,'bb')fromdual;......
  • Java-List集合字段求和函数
    一、FunctionCustom通用求和函数使用示例二、求和函数修订记录版本是否发布2020-01-25v1.0是一、FunctionCustom通用求和函数使用示例特点:简化代码......
  • C学习笔记:自己写的函数实现strtok函数的功能
    intsign(char*str,char*sep)//遍历寻找符合的符号{while(*sep)//遍历sep字符数组的符号{if(*sep==*str)return1;//符合条件......
  • js 实现 sum 函数无限累加
    //无限累加sum//一共做两件事://1.调用一次返回当前计算函数本身,该函数主要作用之一为合并多次调用传的不同数量的参数//2.给返回的函数增加valueOf最终计算结......
  • excel 公式 函数
    公式手写函数文字要用双引号定义名称修改函数点击文字点击fx就会弹出对话框countifs查数datedify求两个日期间年数m月数d天数也可以用year函数代替i......
  • 随机函数变换示例
    随机函数变换示例作者:Grey原文地址:随机函数变换示例说明本示例中基于Java,其他语言也有类似的API解决的问题问题1Java中Math.random()函数是等概率返回区间[0......
  • C++ 函数重载
    1.C++可以使用同名函数[重载函数]实现功能类似的多个不同函数,C语言不支持函数重载;2.函数名重载即函数名相同,但是,函数的参数(形参)绝不相同:1)参数个数不同;2)或参数的类......
  • JS基础:数组、函数、对象
    字符串要用英文双引号括起来。字符串与其他类型数据之间用加号+连接起来//--------------------------------------------------------JS中定义声明变量是用关键字var,J......