第一个C++类实例

来源:互联网 发布:淘宝买岛国片搜什么 编辑:程序博客网 时间:2024/06/05 04:20

CircleClass.h

#include <iostream>#define PI 3.14159class circle{private:double x;double y;double r;double primeter;double area;void calcPrimeter(){primeter = 2*PI*r;}void calcArea(){area = PI*r*r;}public:circle();circle(double x, double y, double r);~circle();void transXY(double x,double y);void zoomR(double alpha);void showInfo();};

CircleClass.cpp

#include <iostream>#include "CircleClass.h"using namespace std;circle::circle(){x = 0;y = 0;r = 1;calcPrimeter();calcArea();}circle::circle(double x,double y,double r){this->x = x;this->y = y;this->r = r;calcPrimeter();calcArea();}circle::~circle(){}void circle::transXY(double x_offset,double y_offset){x += x_offset;y += y_offset;}void circle::zoomR(double alpha){r *= alpha;calcPrimeter();calcArea();}void circle::showInfo(){cout<<"The centroid is located at "<<"("<<x<<","<<y<<")"<<endl;cout<<"The diameter is "<<2*r<<endl;cout<<"The primeter is "<<primeter<<endl;cout<<"The area is "<<area<<endl;}
main.cpp

#include "CircleClass.h"#include <iostream>using namespace std;int main(){circle Instance;Instance.showInfo();Instance.transXY(1,1);Instance.showInfo();Instance.zoomR(3);Instance.showInfo();circle Instance2(1,1,2);Instance2.showInfo();system("pause");return 0;}
运行结果:




0 0
原创粉丝点击