The Leak of The Memory in C++ 1.2
Last time I showed a smart pointer has some side effect. This time
I'll show you another smart pointer which is much better. Now our hero will show
his ability.
The shared_ptr, this smart pointer looks like a raw pointer when
people use it. Which introduced by boost - one of most inportant c++ libraries. We can
use this smart pointer like the last smart pointer which I already introduced.
Just like this.
And you can assign value to them, just like this.
You can use this smart pointer in 99% situation without any
consideration.
This smart pointer is very, very important, it should been konwn by every C++ programmer as int type..
And this smart pointer already is part of C++11, means you can use it
any where any time. The demo code is below:
appMain.h
Last time I showed a smart pointer has some side effect. This time
I'll show you another smart pointer which is much better. Now our hero will show
his ability.
The shared_ptr, this smart pointer looks like a raw pointer when
people use it. Which introduced by boost - one of most inportant c++ libraries. We can
use this smart pointer like the last smart pointer which I already introduced.
Just like this.
shared_ptr<Person> p1(new Person);
shared_ptr<Person> p2(new Person);And you can assign value to them, just like this.
shared_ptr<Person> p1(new Person);
shared_ptr<Person> p2 = p1;
shared_ptr<Person> p3(new Person);
p3 = p1;You can use this smart pointer in 99% situation without any
consideration.
This smart pointer is very, very important, it should been konwn by every C++ programmer as int type..
And this smart pointer already is part of C++11, means you can use it
any where any time. The demo code is below:
appMain.h
#include <iostream>
#include <boost/shared_ptr.hpp>
#include "Person.h"
using namespace std;
using namespace boost;
int main(int,char**)
{
shared_ptr<Person> p1(new Person);
shared_ptr<Person> p2(new Person);
shared_ptr<Person> p3 = p2;
p3 = p1;
return 0;
}

本文详细介绍了C++11中shared_ptr的使用方法,包括如何初始化、赋值以及在不同情况下的应用。shared_ptr作为现代C++中管理内存资源的强大工具,对于每个程序员来说都是必备的知识。
3万+

被折叠的 条评论
为什么被折叠?



