2192 类型可变的类

Description

定义一个Data类,至少包含1个int类型的数据成员、1个double类型的数据成员,定义其构造函数和析构函数,使得程序执行时,能产生样例所示的结果。

Input

输入2行,第1行是1个int类型的数据,第2行是1个double类型的数据。

Output

见样例。

Sample Input

120 3.14

Sample Output

A default object is created.

An integer object 120 is created.

A double object 3.14 is created.

The double object 3.14 is erased.

The integer object 120 is erased.

The default object is erased.

HINT

Append Code

append.cc,

#include<iostream>
#include <cstring>
using namespace std;
class Data
{
private:
    int a;
    double b;
    int C;
public:
    Data(){C=0;cout<<"A default object is created."<<endl;}
    Data(int _a):a(_a){C=1;cout<<"An integer object "<<a<<" is created."<<endl;}
    Data(double _b):b(_b){C=2;cout<<"A double object "<<b<<" is created."<<endl;}
    ~Data()
    {
        if(C==1)
            cout<<"The integer object "<<a<<" is erased."<<endl;
        else if(C==2)
            cout<<"The double object "<<b<<" is erased."<<endl;
        else
            cout<<"The default object is erased."<<endl;
    }
};
int main()
{
    Data d1;
    int i;
    cin>>i;
    Data d2(i);
    double d;
    cin>>d;
    Data d3(d);
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_43510106/article/details/89787984