c++面向对象-创建一个圆类并批量求面积
使用vim进行编程,接下来会一边学习一边分享关于c++和linux的知识
多的不说一切都在代码里
/*************************************************************************
> File Name: circle.h
> Author: ma6174
> Mail: ma6174@163.com
> Created Time: Fri 01 Mar 2024 08:26:55 PM EST
************************************************************************/
#ifndef CIRCLE_H // 作为预编译头防止出现重复编译
#define CIRCLE_H
// 声明一个圆类 注意是声明
class circle{
public:
// initial the circle class
circle(double r):radius(r){} // 一种初始化的快捷方式 构造函数
circle():radius(0){};
double getr()const;
double getarea()const;
~circle(){};
private:
// 这里不能用 const 只能用constexpr
// 静态成员变量
static constexpr double PI = 3.1415926;
double radius;
};
#endif
/*************************************************************************
> File Name: circle.cpp
> Author: ma6174
> Mail: ma6174@163.com
> Created Time: Fri 01 Mar 2024 08:39:33 PM EST
************************************************************************/
#include"circle.h"
double circle::getr() const
{
return this->radius;
}
double circle::getarea() const
{
return PI * radius * radius;
}
/*************************************************************************
> File Name: main.cpp
> Author: ma6174
> Mail: ma6174@163.com
> Created Time: Fri 01 Mar 2024 08:44:05 PM EST
************************************************************************/
#include<iostream>
#include<vector>
#include"circle.h"
using namespace std;
int main(int args, char* arg[])
{
vector<circle> circles;
int nums;
double areas = 0;
cout << "how many circles do you want:";
cin >> nums;
for(int i = 1; i <= nums; i++)
{
double r;
cout << "please input " << i << "th circle radius:";
cin >> r;
circles.push_back({r});
areas += circles[i-1].getarea();
}
cout << "the answer = " << areas << endl;
return 0;
}