- 26
- 0
- 约1.53万字
- 约 68页
- 2016-12-02 发布于湖北
- 举报
默认参数值的说明次序 有默认参数的形参必须在形参列表的最后,也就是说默认参数值的右面不能有无默认值的参数。因为调用时实参与形参的结合是从左向右的顺序。 例: int add(int x, int y = 5, int z = 6);//正确 int add(int x = 1, int y = 5, int z);//错误 int add(int x = 1, int y, int z = 6);//错误 * 3.3 带默认参数值的函数 默认参数值与函数的调用位置 如果一个函数有原型声明,且原型声明在定义之前,则默认参数值必须在函数原型声明中给出;而如果只有函数的定义,或函数定义在前,则默认参数值需在函数定义中给出。 例: * 3.3 带默认参数值的函数 int add(int x = 5,int y = 6) { //只有定义,没有原型声明 return x + y; } int main() { add(); } int add(int x = 5,int y = 6); //原型声明在前 int main() { add(); } int add(int x,int y) { //此处不能再指定默认值 return x + y; } 例3-15计算长方体的体积 子函数getVolume是计算体积的函数,有三个形参:length(长)、width(宽)、height(高),其中width和height带有默认值。 主函数中以不同形式调用getVolume函数,分析程序的运行结果。 * 3.3 带默认参数值的函数 //3_15.cpp #include iostream #include iomanip using namespace std; ? int getVolume(int length, int width = 2, int height = 3); ? int main() { const int X = 10, Y = 12, Z = 15; cout Some box data is ; cout getVolume(X, Y, Z) endl; cout Some box data is ; cout getVolume(X, Y) endl; cout Some box data is ; cout getVolume(X) endl; return 0; } ? int getVolume(int length, int width/* = 2 */, int height/* = 3 */) { cout setw(5) length setw(5) width setw(5) height \t; return length * width * height; } * 3.3 带默认参数值的函数 例3-15(续) 3.4 函数重载 C++允许功能相近的函数在相同的作用域内以相同函数名声明,从而形成重载。方便使用,便于记忆。 例: * 形参类型不同 int add(int x, int y); float add(float x, float y); 形参个数不同 int add(int x, int y); int add(int x, int y, int z); 注意事项 * 3.4 函数重载 不要将不同功能的函数声明为重载函数,以免出现调用结果的误解、混淆。这样不好: int add(int x,int y); int add(int a,int b); 编译器不以形参名来区分 int add(int x,int y); void add(int x,int y); 编译器不以返回值来区分 int add(int x, int y) { return x + y; } float add(float x,float y) { return x - y; } 重载函数的形参必须不同:个数不同或类型不同。 编译程序将根据实参和形参的类型及个数的最佳匹配来选择调用哪一个函数。 例3-16重载函数应用举例 编写两个名为sumOfSquare的重载函数,分别求两整数的平方和及两实数的平方和。 * 3.4 函数重载 #include iostream using namespace std; int sumOfSquare(int a, int b) { return a * a + b * b; } double sumOfSquare(double a, double b) { return a * a + b * b; } int main() { int m, n;
您可能关注的文档
最近下载
- 最新在学习贯彻党的创新理论方面存在的问题和改进措施(五篇合集).pdf VIP
- 西南18J517 厨房 卫生间 浴室设施.docx VIP
- 电工每日巡查记录表.docx VIP
- 2025浙江金华兰溪市招聘机关事业单位编外人员25人笔试参考题库附答案解析.docx VIP
- 漳州辅警面试题目及答案.doc VIP
- 2025年益阳医学高等专科学校单招笔试综合素质试题库含答案解析(5卷).docx VIP
- 《大学体育》理论讲座课件:第五章 体育竞赛.ppt VIP
- 2025年锦州辅警协警招聘考试真题附答案.docx VIP
- 初中数学开学第一课.pptx
- Apeos打印机 多功能一体机C328 df, C328 dw, C328 说明书.pdf
原创力文档

文档评论(0)