完成教材P86习题3.25 圆柱类的定义和实现,使用构造函数的重载或者默认构造函数,并在成员初始化列表中完成对象的初始化,创建一个对象数组和对象指针,讨论构造和析构的次序。

  1. 完成教材P86习题3.25 圆柱类的定义和实现,使用构造函数的重载或者默认构造函数,并在成员初始化列表中完成对象的初始化,创建一个对象数组和对象指针,讨论构造和析构的次序。

 

// test3.25.cpp: 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include
using namespace std;
const double PI = 3.14;                           //定义常量IP

class cylinder {                                         //创建类 

public:
    cylinder(double r, double h);               //声明构造函数cylinder()的原型
    cylinder();                                             //声明无参数的构造函数
    ~cylinder();                                          //声明析构函数
    void vol();                                             //声明成员函数

private:
    double  r1, h1,v1;                                  //声明私有数据成员
};

cylinder::cylinder(double r, double h) :r1(r),h1(h),v1(r1 * r1*PI*h1)
//构造函数的定义
{
    cout << "use" << endl;
//    r1 = r;
//    h1 = h;
//    v1 = r1 * r1*PI*h1;                                //计算体积并存储在double变量v1中
}

cylinder::cylinder() {                                  //无参构造函数的定义
    cout << "use1" << endl;
}

cylinder::~cylinder() {                               //析构函数的定义
    cout << "use2" << endl;
}
inline void cylinder::vol() {                                 //成员函数的定义
    cout << "volume is:" << v1 << endl;      //访问私有数据成员 
}

int main()                                                  //主函数
{
    cylinder *c;
    c = new cylinder(2, 3);
    c->vol();
    delete c;
    return 0;
}

你可能感兴趣的:(学)