一聚教程网:一个值得你收藏的教程网站

热门教程

C++详解默认参数的构造函数及简单实例代码

时间:2022-06-25 04:39:36 编辑:袖梨 来源:一聚教程网

现在给大家介绍下 有默认参数的构造函数:

   大家知道函数获取形参的时候是通过函数调用时在实参里获得的,因此我们必须保证 实参的个数 和  形参的个数必须相同。而且有些情况下我们对于实参或许都是个固定的值。例如 我们需要计算长方形的面积 长x宽 但是用户可以不输入长  而且如果用户指定的情况下默认的长为 3,但是如果用户指定了则使用用户指定的宽 这就是用到默认参数了!

代码:

 代码如下复制代码

#include

usingnamespacestd;

intarea(intl,intw=3);// 函数声明 并定义默认参数w=3;

 

intmain(){

  intc=4;//长

  intk=5;

  intres;//结果

  res = area(c);

  cout<

  return0;

}

intarea(intl,intw){//函数定义 l长 w宽

  intres=0;

  res = l*w;

  returnres;

}

例如上面的代码,如果我们像在8行 res=area(c); 这里没有写成 res=area(c,w);则表示 不指定宽是多少,所以如果写成了 后面这样则说明用户指定了这个长方形的宽 为5;那么两者的结果就是不同的!

前者额结果为 12
后者的记过为 20

这就是默认参数的函数 和 没有默认参数函数的区别;

下面的习题:

设计函数,计算长方体的体积 和 长方形的面积

如果用户指定了三个参数则计算长方体的 体积 如果用户输入2个参数则计算长方形面积!

利用到含有默认参数的构造函数;

参考代码:

 代码如下复制代码

#include "stdafx.h"

#include

#include

usingnamespacestd;

intarea(intl,intw,inth=1);// 函数声明 并定义默认参数w=3;

 

intmain(){

  intc=4;//长

  intk=5;//宽

  inth=2;//高

  intres;//结果

  res = area(c,k);

  intres2=area(c,k,h);

  cout<<"面积为 ="<

  cout<<"体积为 ="<

  return0;

}

intarea(intl,intw,inth){//函数定义 l长 w宽

  intres=0;

  res = l*w*h;

  returnres;

}

热门栏目