C++中构造函数默认参数使用 旧城等待, 2021-09-19 04:42 339阅读 0赞 **一 代码** #include <iostream> using namespace std; class Box{ public: Box(int h=2,int w=2,int l=2);//在声明构造函数时指定默认参数 int volume(); private: int height,width,length; }; Box::Box(int h,int w,int len){//在定义函数时可以不指定默认参数 height=h; width=w; length=len; } int Box::volume(){ return height*width*length; } int main(){ Box box1(1);//不指定第2、3个实参 cout<<"box1's volume: "<<box1.volume()<<endl; Box box2(1,3);// 不指定第3个实参 cout<<"box2's volume: "<<box2.volume()<<endl; Box box3; cout<<"box3's volume:"<<box3.volume()<<endl; return 0; } **二 运行** [root@localhost charpter02]# ./0210 box1's volume: 4 box2's volume: 6 box3's volume:8 **三 说明** 该实战中,定义了一个带默认参数的构造函数,是在声明时指定默认参数,而定义时则可以不指定默认参数。定义对象时,可以传0~3个参数,传了几个参数,就替换前面的几个参数,其余都使用默认参数。 使用默认参数的好处在于:调用构造函数时就算没有提供参数也不会出错,且对每一个对象能有相同的初始化状态。 不过,应该在声明构造函数默认值时指定默认参数值,而不能只在定义构造函数时指定默认参数值。如果构造函数中的参数全指定了默认值,则在定义对象时,可给一个实参或多个实参,也可不给实参。 一个类中如果定义了全是默认参数的构造函数后,就不能再定义重载构造函数了。 假设Box类中定义了3个构造函数 Box(int =10,int=3,int=5); Box(); Box(int,int); 若有以下定义语句,则会出现问题 Box box1; //是应该调用第1个构造函数还是应该调用第2个构造函数 Box box2(13,18); //是应该调用第2个构造函数还是应该调用第3个构造函数
相关 C++ 函数默认参数 设计函数sqrt()计算给定数字的平方,默认计算1.0的平方。 include<iostream> using namespace std; doub 水深无声/ 2023年02月12日 14:25/ 0 赞/ 11 阅读
相关 C/C++编程:默认构造函数 由来 先看下面代码 ![在这里插入图片描述][20210321162459962.png] 代码内容很简单,定义了一个包含成员x,y的类Point。在序列的地方可 Myth丶恋晨/ 2022年11月10日 14:22/ 0 赞/ 221 阅读
相关 c语言默认构造函数,C中的默认构造函数 plinth.. 11 让我们来谈谈在过去被认为是最佳实践的完整工程解决方案. 结构的问题是一切都是公共的,所以没有数据隐藏. 我们可以解决这个问题 您创建两个头文件 古城微笑少年丶/ 2022年10月14日 15:45/ 0 赞/ 204 阅读
相关 一个程序掌握C++带参构造函数、带有默认参数的构造函数【C++类的经典使用案例】 文章目录 一、C++带普通参数的构造函数 二、带有默认参数的构造函数 一、C++带普通参数的构造函数 include <iost 快来打我*/ 2022年10月07日 11:00/ 0 赞/ 193 阅读
相关 C++构造函数语意学——默认拷贝构造函数 概述 使用 class object 时,在以下三种情况会以一个 object 的内容作为另一个 class object 的初值,即用到拷贝构造函数: 1. 定义一 电玩女神/ 2022年08月07日 03:40/ 0 赞/ 249 阅读
相关 C++构造函数语意学——默认构造函数 概述 在 class 中,若程序员没有为该 class object 定义 default constructors,则编译器会根据需要产生一个 implicit def 叁歲伎倆/ 2022年08月07日 00:11/ 0 赞/ 235 阅读
相关 构造函数参数为0时,是默认构造函数吗 求大佬解答 例如: \include<iostream> \include<string> \include<cmath> using namespace st 古城微笑少年丶/ 2022年05月29日 04:43/ 0 赞/ 218 阅读
相关 小朋友学C++(9):构造函数的默认参数 构造函数可以预先赋一个初值,其作用是:在构造函数被调用时,省略部分或全部参数,这时就会使用默认参数代替实参。 程序: include <iostream> 今天药忘吃喽~/ 2022年05月23日 10:30/ 0 赞/ 181 阅读
相关 C++中构造函数默认参数使用 一 代码 include <iostream> using namespace std; class Box{ public: 旧城等待,/ 2021年09月19日 04:42/ 0 赞/ 340 阅读
还没有评论,来说两句吧...