CPP学习之——默认构造函数(6.14)

一 概述

假如我们无法确定所要创建的长方形的长和宽,也就是说我们不提供一个构造函数

二 代码及结果

2.1 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<iostream>
using namespace std;
class rectangel {

private:
int width;
int length;
public:
rectangel(int w, int l) {
width = w;
length = l;
}
rectangel(){cout<<"默认构造函数在运行"<<endl;}
int area() {
return width * length;
}
};
int main() {
rectangel a(3, 4);
cout << "长方形面积为:" << a.area() << endl;
rectangel b;
cout << "长方形面积为:" << b.area() << endl;
return 0;
}

2.2 结果

1
2
3
长方形面积为:12
默认构造函数在运行
长方形面积为:0

2.3 说明

  • 假如我们不提供一个构造函数,那么系统会为我们自动创建一个构造函数,该函数什么参数也没有,而且也不执行任何功能,它的作用只是构造一个对象
  • 一般来说,只要我们不创建任何构造函数,那么系统就会默认为我们创建这个什么功能都没有的默认构造函数,而一旦我们创建了一个构造函数,那么这个默认构造函数就会被自动屏蔽
  • 也就是说,只要我们创建了一个构造函数,那么系统就不会再为我们提供默认构造函数了
  • 我们可以创建多个构造函数。比如说我们可以创建一个类似默认构造函数的不带参数的构造函数,同时也可以创建一个带参数的构造函数