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;
相关推荐
爱喝热水的呀哈喽几秒前
cpp二分库函数 lambda捕获
算法
鬼手点金8 分钟前
opencode-crawl4ai使用建议
java·开发语言·人工智能·python·机器学习
longlongzihan11 分钟前
LeetCode 76. 最小覆盖子串:滑动窗口算法详解
算法·leetcode·滑动窗口
谢亮_vipxieliang27 分钟前
Go select 多路复用:从语法到实战的完整指南
开发语言·后端·golang
怕浪猫9 小时前
RAG 面试 6 连问,从原理到优化全部覆盖
python·算法·面试
无线通信科研笔记10 小时前
IEEE TVT 2026 论文精读与完整复现|相位误差如何重塑近场 RIS 的幅相响应
论文阅读·人工智能·python·算法·论文笔记
2601_9628857210 小时前
如何用 Python 自动识别股票的支撑位与压力位?
开发语言·python
mmmmath_310 小时前
二叉树の递归遍历
算法
爱吃奥利奥_wen11 小时前
面向对象三板斧:封装、继承、多态,到底在“装“什么、“承“什么、“变“什么?
开发语言·经验分享·c#
All for pursuit.11 小时前
【位运算-1】338.比特位计数
数据结构·c++·算法·leetcode