首页 > 编程语言 >《C++》函数重载

《C++》函数重载

时间:2023-06-13 21:32:30浏览次数:46  
标签:函数 int 默认 参数 C++ 重载 默认值

函数默认值

函数调用时传入数据则覆盖默认值,反则使用默认值

int Add(int a, int b=0,int c=0)
{
	return a + b + c;
}
int main()
{
	int ret = Add(1, 3);
	cout << ret << endl;
	system("pause");
	return 0;
}
  • 如果从一个位置设置默认参数,其后也必须设置默认参数
  • 若函数声明有默认参数,函数实现就不能有默认参数(声明和实现只能有一个有默认参数)

函数重载

函数重载可以让函数名相同,提高复用性

void Print()
{
	cout << "不带参数调用" << endl;
}
void Print(int)
{
	cout << "带参数调用" << endl;
}
int main()
{
	Print();
	Print(10);
	system("pause");
	return 0;
}
  • 在同一作用域
  • 函数名相同
  • 参数类型或个数、顺序不同
  • 函数返回值不可以作为重载的条件

标签:函数,int,默认,参数,C++,重载,默认值
From: https://blog.51cto.com/u_16071993/6473264

相关文章

  • 现代C++学习指南-类型系统
    在前一篇,我们提供了一个方向性的指南,但是学什么,怎么学却没有详细展开。本篇将在前文的基础上,着重介绍下怎样学习C++的类型系统。写在前面在进入类型系统之前,我们应该先达成一项共识——尽可能使用C++的现代语法。众所周知,出于兼容性的考虑,C++中很多语法都是合法的。但是随着新......
  • Python调用C/C++动态库
    一、编译C++代码并封装成动态库1、创建编译dll文件的项目,在上面的官网介绍的更详细,这里就不多做介绍了。注意在vs之中新建一个项目,项目选择动态链接库(DLL)2、2.在源文件中添加cpp文件并写好函数#include<iostream>#defineMATHLIBRARY_APIextern"C"__declspec(dllexport)......
  • Ease缓动函数封装
     什么是Ease缓动函数:Ease缓动函数是一种常见的动画效果函数,使用Ease缓动函数可以让动画效果看起来更加真实,时而加速时而减速,让动画不至于看上去太过“平凡”具体的缓动效果可以参考https://www.xuanfengge.com/easeing/easeing/算是比较简单的一个功能,就不墨迹了usingUn......
  • JS-数组和函数
    1.数组数组Array:是一种可以按顺序保存数据的数据类型1.1声明数组let数组名=[数据1,数据2,数据3,...,数据n]或let数组名=newArray(数据1,数据2,数据3,...,数据n)<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahtt......
  • CLIP损失函数的理解
    参考资料:[一个写的相当好的教程][CLIPhuggingface源码:CLIPModel][CLIPhuggingface训练例程]这篇文章首先展示CLIP损失函数的两种底层实现代码,然后聊一聊自己的理解。说实话念硕士的时候没有接触过CLIP这个东西,来实习之后发现这个多模态的模型使用......
  • C++之继承(万字长文详解)
    继承继承的概念继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。以前我们接触的复用都是函数复用,继承......
  • C++销售管理助手[2023-06-13]
    C++销售管理助手[2023-06-13]用c++线性结构写一个完整程序,题目如下小美学完线性表后,想设计一个小程序,管理自己的网店销售情况,她想实现以下功能,请设计程序帮她实现:(1)可以录入商品信息,格式如下:(商品编号、商品名称、数量、进价、标价、折扣、售价)样例:(c0001,海飞丝,40,20,30......
  • C++ Builder 初学问与答(二)
     2.文本输入组件11)问:如果要实现文本输入,在C++Builder中应该怎么办? 答:C++Builder常用文本输入组件来实现,常用的文本输入组件有Edit、MaskEdit、Memo和RichEdit。他们的主要不同在于Edit和MaskEdit用于输入单行文本,而Memo和RichEdit可以输入多行文本。此外Label组件也可用来进行......
  • C++ Builder 初学问与答(一)
    一直以来都想写一点为BCB初学者快速入门的东西,前不久写了几篇《闲谈BCB》想把自己学习BCB中如何来解决难点的方法说给大家,没想到被骂得不成样子。本想不写了,但觉得这些东西留下来能做什么呢?还是用另一种方法来重新演译我的思维吧,最近有些忙,那几篇没有写完的文章,我也会尽快写完的,至......
  • C++ 虚函数与动态绑定
    多态与动态绑定为了实现C++的多态,C++使用了动态绑定技术,该技术的核心是虚函数表(简称虚表)。类的虚函数表每个包含了虚函数的类都包含一个虚表,一个子类如果继承了包含虚函数的父类,那么这个类也拥有自己的虚表,例如classA{public:virtualvoidvfunc1();virtualv......