c++带默认参数的函数的声明、定义及使用总结
2015-08-01 11:04
183 查看
1.c++规定默认参数必须从函数参数的右边向左边使用,如下:
正确声明:void fun1(int a, int b=10); void fun2(int a, int b=10, int c=20);
错误声明:
void fun3(int a=5, int b, int c); void fun4(int a, int b=5, int c);
2.默认参数不能在声明和定义中同时出现,如下:
错误使用示范:声明:
void fun1(int a=10);
定义:
void fun1(int a=10){......}
正确使用示范:
声明:
void fun2(int a=10);
定义:
void fun2(int a){......}
或者
声明:
void fun2(int a);
定义:
void fun2(int a=10){......}
3.带默认参数的函数的声明、定义及使用顺序问题
①函数先声明后定义再使用;也可以无声明只定义后使用。若有声明则函数的声明一般(习惯)放在所有函数的定义前,如下示例:
void fun1(int a=10); void fun2(int a, int b=20); void fun1(int a){......} void fun2(int a, int b){......}
若无声明部分,则函数定义部分放在使用的函数体前,如下示例:
void fun3(int a=10){......} void fun4(int a=20) { fun3(); } void main() { fun4(); }
②若在声明和定义间使用函数,需将默认参数放在声明中,这样当使用默认参数时编译能通过,示例:
void fun1(int a=10); void main() { fun1(); } void fun1(int a){......}
③若有声明且在函数定义的后面使用该函数,则默认参数可以放在声明中或定义中。
④一般情况下我们选择将默认参数放在函数定义中,这是我们设计函数的初衷,以及函数在移转过程中的可读性问题。
相关文章推荐
- C/C++编译器GCC下的常用编译命令总结
- C++ DirectShow读取摄像头后然后保存图像数据
- C++ DirectShow读取摄像头后然后保存图像数据
- C++语句简洁化
- C语言计算某天是一年中的第几天(熟练使用状态位flag)
- 【排序算法】用C++实现各种排序算法
- C语言——原码、反码、补码、数据类型取值范围
- 一起talk C栗子吧(第二十六回:C语言实例--冒泡排序)
- 自学笔记OC语言1 补2015年7月28日
- 进程的环境
- 进程的环境
- C语言的优缺点
- 深入理解C语言和面向对象
- 《C++编程思想》第八章 内 联 函 数 (原书代码+知识点+习题+解答)
- C/C++内存分区及各区区别
- Box2D C++ 教程 第二节:环境设置
- c++ 虚函数和纯虚函数
- C语言的图形函数笔记
- 【黑马程序员】C语言之函数
- 【leetcode c++】113 Path Sum II