文档章节

shared_ptr<>动态分配内存

rose_willow
 rose_willow
发布于 2017/09/04 15:46
字数 178
阅读 9
收藏 0

// #include <iostream>

#include <string>

#include <memory>

// class menu{

// public:

// menu() = default;

// menu(int one,int two):a(one),b(two){};

// int show(){

// // this->a = a;

// // this->b = b;

// return a+b;

// };

// private:

// int a;

// int b;

// };

int main()

{

// int *p = new int(2252);

// std::cout<<"new dynamic memory's address "<<p<<std::endl;

// std::cout<<"value of the dynamic space "<<*p<<std::endl;

// delete p;

// p = nullptr;

// std::cout<<"freed memory address "<<p<<std::endl;

// std::cout<<"freed memory value "<<*p<<std::endl;

// std::shared_ptrstd::string one = std::make_sharedstd::string("what the hell is going one ?");

// std::cout<<one<<std::endl;

// std::cout<<*one<<std::endl;

// std::shared_ptr<menu> two = std::make_shared<menu>(3,4);

// std::cout<<two<<std::endl;

// std::cout<<two->show()<<std::endl;

// std::cout<<two->show(333,444)<<std::endl;

std::unique_ptr<int> up;

up.reset(new int);

// std::cout<<"up="<<up<<std::endl;

// std::cout<<"*up="<<*up<<std::endl;

*up = 20;

std::cout<<"*up="<<*up<<std::endl;

// std::cout<<"up ="<<up<<std::endl;

*up = 30;

std::cout<<"*up ="<<*up<<std::endl;

up.reset();

std::cin.get();

std::cin.get();

return 0;

}

© 著作权归作者所有

共有 人打赏支持
rose_willow
粉丝 0
博文 90
码字总数 15682
作品 0
石家庄
运营/编辑
私信 提问
动态内存与智能指针

前言 1.生命周期 全局对象:程序启动时分配,程序结束时销毁 局部自动对象:执行流进入其定义的块时分配,执行流退出其定义的块时销毁 局部static对象:程序启动时分配(但在其定义的块或作用...

种地瓜
2016/04/05
58
0
c++ 智能指针及 循环引用问题

c++智能指针介绍 由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete,比如流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不...

gfsfg8545
2014/04/07
0
0
C++(浅析)智能指针及C#GC(垃圾回收机制)分析[图]

C++(浅析)智能指针及C#GC(垃圾回收机制)分析[图] c++中我们常常使用运算符new和delete来分配和释放动态内存,然而动态内存的管理非常容易出错 使用new 和delete 管理内存存在三个常见问题: ...

原创小博客
08/06
0
0
CUDA学习(五十一)

动态全局内存分配和操作: 动态全局内存分配和操作仅受计算能力2.x和更高的设备支持 从全局内存中的固定大小的堆中动态分配和释放内存: 将src指向的内存位置的大小字节复制到dest指向的内存...

night李
02/19
0
0
Qt 智能指针学习

从内存泄露开始? 很简单的入门程序,应该比较熟悉吧 ^_^ 在 从 Qt 的 delete 说开来 一文中,我们提到这个程序存在内存泄露(表现就是析构函数不被调用),而且当时给出了三种解决方法: 将l...

晨曦之光
2012/05/08
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

深入解析react关于事件绑定this的四种方式

这篇文章主要介绍了详解react关于事件绑定this的四种方式,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 在react组件中,每个方...

前端攻城小牛
12分钟前
1
0
JS正则表达式

url的正则表达式:包括IP,域名(domain),ftp,二级域名,域名中的文件,域名加上端口!用户名等等信息 `function` `IsURL(str_url) {``var` `strRegex =``"^((https|http|ftp|rtsp|mm...

前端小攻略
17分钟前
1
0
shell习题_2

find /root/ceshi1/ -type f -name "*.txt"|xargs -i mv {} {}.bak find /root/ceshi1/ -type f -name "*.txt" -exec mv {} {}.bak \; 1、批量修改文件名: n1=`echo $f|sed '#.bak##'` [ro......

芬野de博客
19分钟前
1
0
JavaScript面向对象的程序设计相关知识小结

面向对象的语言有一个标志,即拥有类的概念,抽象实例对象的公共属性与方法,基于类可以创建任意多个实例对象,一般具有封装、继承、多态的特性!但JS中对象与纯面向对象语言中的对象是不同的...

peakedness丶
22分钟前
1
0
教你React Native使用fetch实现图片上传

这篇文章主要介绍了详解react关于事件绑定this的四种方式,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 在react组件中,每个方...

前端攻城老湿
24分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部