博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【C++】函数缺省参数的作用
阅读量:6992 次
发布时间:2019-06-27

本文共 688 字,大约阅读时间需要 2 分钟。

用法:void func(int param1, int param2 = 1, int param = 3) {}

func(10); //等同于func(10, 1 , 3)

func(10,8); //等同于func(10, 8, 3)

func(10, , 3);//编译错误,只能最右边的连续若干个参数缺省

 

意义:函数参数可缺省的目的在于提高成虚的可扩展性。

 

例如在一个系统中,有一个绘制圆形的方法drawCircle(int radius, int x, int y), 其有三个参数,分别代表了圆的半径,圆心的坐标,这个方法在系统的多处被使用。

现在需要给这个方法加一个绘制颜色的参数,之前的圆形默认颜色都是黑色,并且不需要进行颜色修改。有两种方法可以解决这个问题:

1、直接修改为drawCircle(int radius, int x, int y, int color),并且修改每一处使用到该方法的地方;

2、将颜色设为缺省参数,drawCircle(int radius, int x, int y, int color=BLACK);

现分析两种方法的优缺点,第一种方法很明显工作量大并且意义不大,因为大部分使用了该方法的地方不需要进行颜色设置,可以说是出力不讨好。而第二种方法,并不需要去修改之前已经使用过的地方,因为颜色参数默认值为黑色,而在未来要使用drawCircle的地方可以进行颜色设置。

 

这就是缺省参数的使用意义,方便系统的扩展。

转载于:https://www.cnblogs.com/puyangsky/p/5238188.html

你可能感兴趣的文章
WPF生命周期
查看>>
各大Oj平台介绍
查看>>
hdu1059 dp(多重背包二进制优化)
查看>>
四象限分析法分析你是否适合做管理
查看>>
Create a database in mysql for mac
查看>>
java编程目录
查看>>
swagger
查看>>
QFT URL
查看>>
HDU1195 ZOJ2416 Open the Lock【BFS】
查看>>
用python实现数字图片识别神经网络--启动网络的自我训练流程,展示网络数字图片识别效果...
查看>>
12. Integer to Roman
查看>>
Windows
查看>>
测试与优化——结对编程
查看>>
那些年,我读过的书籍(读完一本就在此处更新),立贴。
查看>>
日历实现
查看>>
病历问题
查看>>
多线程下的单例模式
查看>>
Ansible批量部署工具的安装
查看>>
面经中高频知识点归纳(五)
查看>>
[转] 对 forEach(),map(),filter(),reduce(),find(),every(),some()的理解
查看>>