C++ 重载构造函数
来源:互联网 发布:人才网站源码 编辑:程序博客网 时间:2024/06/08 00:51
1. 重载构造函数
构造函数也具备了重载的特性。
#include <iostream>
using namespace std;
class rectangle
{
public:
rectangle(){cout<<"构造一个长方形a!\n";}
rectangle(int l,int w){length=l;width=w;cout<<"长方形b的面积为:" <<
length * width <<endl;}
rectangle(int l,int w,int h){length=l;width=w;height=h;cout<<"长方体c的体积为:" <<length*width*height<<endl;}
private:
int length;
int width;
int height;
};
void main()
{
rectangle a;
rectangle b(3,4);
rectangle c(3,4,10);
}
2. 成员变量的初始化
1)对成员变量进行初始化有许多方式,一个是在构造函数体中进行难过初始化。
对象a在构造的同事调用构造函数,构造函数通过接收参数将参数传递到函数体中,然后又分别赋给私有变量length和width,完成了对成员变量的初始化工作。
2)另外还有一种方式就是在构造函数的函数头进行初始化。
rectangle () :length(3),width(4){}
在构造函数的右边有个冒号(:),然后是成员变量的名称和一对小括号(),小括号中要是初始化的值或者表达式。如果对多个成员进行初始化,那么要用逗号将他们隔开,最后
一对大括号{},大括号中就是函数索要执行的功能。
//const成员或者引用成员都是不可赋值的,因此只能进行初始化。
#include <iostream>
using namespace std;
class A
{
public:
//A(int a,int b){num=a;total=b;} //错,不能进行赋值
A(int a,int b):num(a),total(b){}
private:
const int num;
int &total;
};
int main()
{
A a(3,4);
return 0;
}
- C#:方法重载、构造函数、重载构造函数小结
- 复制构造函数与赋值重载(c++)
- <C++>14.构造函数的重载与拷贝构造函数
- 构造函数,函数重载
- 构造函数重载
- C++构造函数重载
- 重载构造函数
- 构造函数 重载 好玩
- 构造函数重载
- 构造函数重载
- CDialog构造函数重载
- PHP重载构造函数
- 构造函数重载
- 构造函数和重载
- 构造函数的重载
- c++构造函数重载
- 构造函数的重载
- 重载构造函数
- [Notes] 可持久化数据结构学习笔记
- 第4课:Spark Streaming事务处理彻底掌握
- Stage划分和Task最佳位置算法
- In-memory Computing with SAP HANA读书笔记 - 第七章:Business continuity and resiliency for SAP HANA
- 表单密码强度监测判断JS代码特效
- C++ 重载构造函数
- 第5课:基于案例一节课贯通Spark Streaming流计算框架的运行源码
- Linux 标准IO库 全缓冲、行缓冲、无缓冲
- 李克强:智能网联车现状及发展战略建议(附问答)
- Java_Thread
- 【JDK】:CopyOnWriteArrayList、CopyOnWriteArraySet 源码解析
- MySQL常用函数示例
- opencart更改订单号随机生成
- Android特效 五种Toast详解