[YTU]_2914 ( xiaoping学构造函数)

来源:互联网 发布:命运交响曲 知乎 编辑:程序博客网 时间:2024/05/21 09:04

题目描述

xiaoping刚接触类的构造和析构函数,对于构造函数的编写比较困惑。zhuangzhuang给小平布置了一道题目,xiaoping苦思两天也无法解答,请你帮帮xiaoping吧。

#include <iostream>
using namespace std;
class XiaoPing
{
private:
    int state;   //用来记录是否有参数
    int data;
public:

    XiaoPing();
    XiaoPing(int data);
    ~XiaoPing();
};
//////////////////////////////////////////////

只需完成并提交该部分代码

///////////////////////////////////////////////
XiaoPing::~XiaoPing()
{
    if(state)
        cout<<"destroy an object with a parameter:"<<data<<endl;
    else
        cout<<"destroy an object with no parameter"<<endl;
}
int main()
{
    int data;
    XiaoPing zeropara1;
    cin>>data;
    XiaoPing onepara1(data);
    XiaoPing zeropara2;
    cin>>data;
    XiaoPing onepara2(data);
    return 0;
}

输入

输入两行。每行一个整数,表示构造函数的参数值。

输出

按照题意输出构造函数和析构函数的调用顺序和信息。

样例输入

12

样例输出

create an object with no parametercreate an object with a parameter:1create an object with no parametercreate an object with a parameter:2destory an object with a parameter:2destory an object with no parameterdestory an object with a parameter:1destory an object with no parameter
#include <iostream>using namespace std;class XiaoPing{private:    int state;   //用来记录是否有参数    int data;public:     XiaoPing();    XiaoPing(int data);    ~XiaoPing();};XiaoPing::XiaoPing(){    state=0;}XiaoPing::XiaoPing(int d){    state=1;    data=d;    cout<<"create an object with no parameter"<<endl;    cout<<"create an object with a parameter:"<<data<<endl;}XiaoPing::~XiaoPing(){    if(state)        cout<<"destory an object with a parameter:"<<data<<endl;    else        cout<<"destory an object with no parameter"<<endl;}int main(){    int data;    XiaoPing zeropara1;    cin>>data;    XiaoPing onepara1(data);    XiaoPing zeropara2;    cin>>data;    XiaoPing onepara2(data);    return 0;}

原创粉丝点击