首页 > 其他 > 详细

第二讲 auto_ptr智能指针

时间:2014-06-25 20:09:56      阅读:351      评论:0      收藏:0      [点我收藏+]
// STL.cpp : 定义控制台应用程序的入口点。
//
//智能指针在其生命周期结束后会自动调用delete
#include "stdafx.h"
#include<iostream>
#include<memory>
using namespace std;

class WebSite
{
public:
    WebSite(int x){i = x;cout << i << "调用构造函数" << endl;}
    ~WebSite(){cout << "调用析构函数" << endl;}
    void output(){cout << "output" << endl;}
private:
    int i;

};
int _tmain(int argc, _TCHAR* argv[])
{
    auto_ptr<WebSite> autop1(new WebSite(4));//定义了一个WebSite类的指针autop
    auto_ptr<WebSite> autop2(new WebSite(7));
    autop1->output();
    cout << autop1.get() << endl;        //得到auto的一个指针
    cout << autop2.get() << endl;
    //autop1.reset();                        //将auto指向NULL
    //cout << autop1.get() << endl;
    ////autop1->output();                    //reset之后auto不可以再使用了

    autop1 = autop2;            //析构原来autop1指向的地址,将autop2指向的之地址赋给autop1。
                                //也就是说智能指针只能对一个对象并保持该地址
    cout << autop1.get() << endl;
    cout << autop2.get() << endl;

    return 0;
}

 

第二讲 auto_ptr智能指针,布布扣,bubuko.com

第二讲 auto_ptr智能指针

原文:http://www.cnblogs.com/zenseven/p/3805745.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!