C++之函数重载

函数重载概念:

是函数的一种特殊情况, C++ 允许在 同一作用域中 声明几个功能类似 的同名函数 ,这
些同名函数的 形参列表(参数个数 或 类型 或 类型顺序)不同 ,常用来处理实现功能类似数据类型
不同的问题。

cpp 复制代码
#include<iostream>
//同一作用域
using namespace std;
// 1、参数类型不同
int Add(int left, int right)
{
	cout << "int Add(int left, int right)" << endl;
	return left + right;
}
double Add(double left, double right)
{
	cout << "double Add(double left, double right)" << endl;
	return left + right;
}
// 2、参数个数不同
void f()
{
	cout << "f()" << endl;
}
void f(int a)
{
	cout << "f(int a)" << endl;
}
// 3、参数类型顺序不同
void f(int a, char b)
{
	cout << "f(int a,char b)" << endl;
}
void f(char b, int a)
{
	cout << "f(char b, int a)" << endl;
}
int main()
{
	Add(10, 20);
	Add(10.1, 20.2);

	f();
	f(10);

	f(10, 'a');
	f('a', 10);
	return 0;
}
cpp 复制代码
#include<iostream>
//不同作用域
using namespace std;
// 1、参数类型不同
int Add(int left, int right)
{
	cout << "int Add(int left, int right)" << endl;
	return left + right;
}

namespace bit2
{
	double Add(double left, double right)
	{
		cout << "double Add(double left, double right)" << endl;
		return left + right;
	}
}
int main()
{
	//不构成重载函数
	Add(10, 20);
	Add(10.1, 20.2);

	Add(10, 20);
	bit2::Add(10.1, 20.2);
	return 0;
相关推荐
Predestination王瀞潞2 小时前
IO操作(Num22)
开发语言·c++
haoly19892 小时前
数据结构和算法篇-线性查找优化-移至开头策略
数据结构·算法·移至开头策略
宋恩淇要努力3 小时前
C++继承
开发语言·c++
沿着路走到底4 小时前
python 基础
开发语言·python
沐知全栈开发5 小时前
C# 委托(Delegate)
开发语言
江公望5 小时前
Qt qmlRegisterSingletonType()函数浅谈
c++·qt
任子菲阳5 小时前
学Java第三十四天-----抽象类和抽象方法
java·开发语言
学Linux的语莫6 小时前
机器学习数据处理
java·算法·机器学习
csbysj20206 小时前
如何使用 XML Schema
开发语言
R6bandito_6 小时前
STM32中printf的重定向详解
开发语言·经验分享·stm32·单片机·嵌入式硬件·mcu