用c++.定义一个circle类,用来计算并显示圆的周长和面积 为这个函数创建一个默认构造函数(半径为r出赋值为1)和带形参的构造函数(为类的成员变量通过实参进行初始化),并分别输出提示语“默认构造函数”“带形参的构造函数”。 为这个类创建析构函数,并输出提示语“析构函数”;。 类的声明和类的定义,请存放在不同的文件中,取名为circle.h和circle.cpp主函数中,创建两个对象,分别自动调用两个构造函数并在屏幕上显示周长和面积的相关信息。
时间: 2024-01-21 09:19:03 浏览: 151
以下是circle.h文件的代码:
```cpp
#ifndef CIRCLE_H
#define CIRCLE_H
class Circle {
public:
Circle(); // 默认构造函数
Circle(double r); // 带形参的构造函数
~Circle(); // 析构函数
double getArea(); // 计算圆的面积
double getPerimeter(); // 计算圆的周长
private:
double radius;
};
#endif
```
以下是circle.cpp文件的代码:
```cpp
#include "circle.h"
#include <iostream>
using namespace std;
Circle::Circle() {
radius = 1;
cout << "默认构造函数" << endl;
}
Circle::Circle(double r) {
radius = r;
cout << "带形参的构造函数" << endl;
}
Circle::~Circle() {
cout << "析构函数" << endl;
}
double Circle::getArea() {
return 3.14 * radius * radius;
}
double Circle::getPerimeter() {
return 2 * 3.14 * radius;
}
```
以下是主函数的代码:
```cpp
#include "circle.h"
#include <iostream>
using namespace std;
int main() {
Circle c1; // 自动调用默认构造函数
cout << "半径为" << c1.getPerimeter() << "的圆,周长为" << c1.getPerimeter() << ",面积为" << c1.getArea() << endl;
Circle c2(3); // 自动调用带形参的构造函数
cout << "半径为" << c2.getPerimeter() << "的圆,周长为" << c2.getPerimeter() << ",面积为" << c2.getArea() << endl;
return 0;
}
```
以上代码中,我们定义了Circle类,其中包括默认构造函数、带形参的构造函数和析构函数,以及计算圆的周长和面积的方法。在主函数中,我们创建了两个Circle对象,分别自动调用了两个不同的构造函数,并输出了相关信息。
阅读全文