第六周——程序阅读(四)

来源:互联网 发布:wps mac 免费完整版 编辑:程序博客网 时间:2024/06/05 18:27

问题及代码:

/**Copyright (c) 2014,烟台大学计算机学院*All rights reserved.*文件名称:lily.cpp*作者:李莉*完成日期:2014年4月8日版本号:v1.0**/#include <iostream>using namespace std;class example{public:    example()    {        cout<<"Default Constructing! "<<endl;    }    example(int n)    {        i=n;        cout<<"Constructing: "<<i<<endl;    }    ~example()    {        cout <<"Destructing: "<<i<<endl;    }    int get_i()    {        return i;    }private:    int i;};int sqr_it(example o){    return o.get_i()* o.get_i();}int main(){    example x(10);    cout<<x.get_i()<<endl;    cout<<sqr_it(x)<<endl;    return 0;}


运行结果:

自我理解:

开始的时候,建立example的x对象时,会调用example的构造函数,于是会输出Constructing:10,然后又有输出x.get_i于是此时的i的值就是10,后面还有一个就是输出的是i的平方,即函数sqrt_it(x),于是会输出100,然后就是依次析构函数了,两次析构,分别输出Destructing:10

0 0