C++ std::make_shared是什么怎么用
shared_ptr<string> p1 = make_shared<string>(10, '9'); shared_ptr<string> p2 = make_shared<string>("hello"); shared_ptr<string> p3 = make_shared<string>();
C++11 中引入了智能指针, 同时还有一个模板函数 std::make_shared 可以返回一个指定类型的 std::shared_ptr
https://www.jianshu.com/p/03eea8262c11
// make_shared example
#include <iostream>
#include <memory>int main () {std::shared_ptr<int> foo = std::make_shared<int> (10);// same as:std::shared_ptr<int> foo2 (new int(10));auto bar = std::make_shared<int> (20);auto baz = std::make_shared<std::pair<int,int>> (30,40);std::cout << "*foo: " << *foo << '\n';std::cout << "*bar: " << *bar << '\n';std::cout << "*baz: " << baz->first << ' ' << baz->second << '\n';return 0;
}
C++ std::make_shared是什么怎么用相关推荐
- 【c++】4.std::shared_ptr、std::make_shared、 .get() 、.data()、void *p 的用法、裸指针
std::shared_ptr.std::make_shared. .get() ..data().void *p 的用法.裸指针 (1)shared_ptr能够记录对象被引用的次数,主要被用来管理动 ...
- std::make_shared<T>/std::make_unique<T>与std::shared_ptr<T>/std::unique_ptr<T>的区别与联系
(1).std::make_shared<T>与std::make_unique<T>相对于std::shared_ptr<T>/std::unique_ptr&l ...
- std::make_unique<T>和std::make_shared<T>
更建议使用:std::make_unique<T>构造unique_ptr对象:std::make_shared<T>构造shared_ptr对象 std::make_shar ...
- std::make_unique和 std::make_shared区别
区别1:分配除的指针,前者是不能赋值,只能move,后者可以赋值 区别2:前者使用智能指针数组,后者不行(因为后者分配出来的指针具有单一性) #include #include class A { p ...
- C++11 std::make_shared 与 std::shared_ptr双剑合璧
项目做完上线,发现存在内存泄漏.因为客户端链接到服务器时传统new出来对象,断开链接后没有进行释放. 一.定时检测对象释放情况 代码如下: //1.开启服务监听 bool CWebServer::St ...
- C++11中std::bind的使用
std::bind函数是用来绑定函数调用的某些参数的.std::bind它可以预先把指定可调用实体的某些参数绑定到已有的变量,产生一个新的可调用实体.它绑定的参数的个数不受限制,绑定的具体哪些参数也不 ...
- C++ 智能指针std::shared_ptr简单使用和理解
参考:https://blog.csdn.net/u011068702/article/details/83692838 1 智能指针std::shared_ptr相关知识和如何使用 我们这里先说下 ...
- C++ 11三个新特性的简单使用 - std::function、lambda 表达式、智能指针
使用Dev C++:先设置Dev C++ 支持 C++ 11:见此文后部: https://blog.csdn.net/bcbobo21cn/article/details/111466179 1 s ...
- make_shared和shared_ptr的区别
struct A; std::shared_ptr<A> p1 = std::make_shared<A>(); std::shared_ptr<A> p2(new ...
- C++11新特性以及std::thread多线程编程
一 .C++11新特性 1. auto 类型推导 1.1 当=号右边的表达式是一个引用类型时,auto会把引用抛弃,直接推导出原始类型: 1.2 当=号右边的表达式带有const属性时,auto不会使 ...
最新文章
- Browser Security-超文本标记语言(HTML)
- 通讯接口:I2C和USART,SPI,CAN,USB2.0
- wordpress怎么设置文章页面不打开新的窗口_2019 WordPress外贸网站SEO优化基础设置(新手图文教程)...
- c语言函数 fprintf()(向文件写入格式化字符串)
- Windows系统下彻底卸载MySQL数据库
- 程序员需要谨记的九大安全编码规则
- wine运行软件检测不到u盘_PE吧“U盘助理”——启动U盘制作图文教程-
- linux 重定向命令
- PMP_考前冲刺题(2022)(3A通过分享)(180题附答案及解析)
- Photoshop下载
- win7旗舰版激活提示错误代码0x80072EE2的最简单解决办法
- 【独家】一文读懂数据可视化
- ESXI上检测磁盘状态
- 计算几何之旋转卡壳算法
- python-web开发[12]之css案例、bootstrap探索
- 基于单片机的电流检测仿真设计(#0041)
- EPS是什么文件格式
- 艾永亮:产品做完后,第一步就是马上推广吗?
- IELTS Lexical Resources - Reading 1 social problem
- JavaIO流概念详解