C++11 - std::shared_ptr初始化的几种方式
文章目录
- 1 std::shared_ptr初始化的几种方式
- 1.1 构造函数初始化
- 1.2 std::make_shared 初始化(推荐方式)
- 1.3 reset初始化
1 std::shared_ptr初始化的几种方式
这里只总结一下std::shared_ptr初始化的几种方,不对std::shared_ptr的优缺点进行说明,初始化的方式比较多,平时码字的时候经常会搞迷糊,备忘。
1.1 构造函数初始化
std::shared_ptr<int> pointer(new int(1));std::shared_ptr<int> pointer1 = pointer;std::shared_ptr<std::string> ss(new std::string("AAA"));std::shared_ptr<std::string> = std::shared_ptr<std::string>(new std::string("AAA"));
1.2 std::make_shared 初始化(推荐方式)
std::shared_ptr<string> p3 = std::make_shared<string>();std::shared_ptr<string> p2 = std::make_shared<string>("hello");//auto关键字代替std::shared_ptr,p5指向一个动态分配的空vector<string>
auto p5 = make_shared<vector<string>>();
1.3 reset初始化
std::shared_ptr<int> pointer = nullptr;
pointer.reset(new int(1));
大家如果有兴趣,可以访问我的个人站:http://www.stubbornhuang.com
C++11 - std::shared_ptr初始化的几种方式相关推荐
- C++类中成员变量的初始化有两种方式
C++类中成员变量的初始化有两种方式: 构造函数初始化列表和构造函数体内赋值.下面看看两种方式有何不同. 成员变量初始化的顺序是按照在那种定义的顺序. 1.内部数据类型(char,int--指针等) ...
- C语言的二维数组初始化的几种方式介绍(私藏大数组初始化方式)
C语言的二维数组初始化的几种方式介绍 1.直接赋值 2.循环对每个元素赋值 3.借用memset/memset_s初始化为0或-1 4.`数组所有元素初始化为相同值(用于大数组初始化贼方便)` 1.直 ...
- java类初始数组_java中数组初始化的三种方式是什么
java中数组初始化的三种方式是:1.静态初始化,如[int a[] = {2, 0, 1, 9, 2020}]:2.动态初始化,如[int[] c = new int[4]]:3.默认初始化,如[i ...
- 数组初始化的三种方式
数组初始化的三种方式 动态初始化:数组定义与为数组分配空间和赋值的操作分开进行: 静态初始化:在定义数字的同时就为数组元素分配空间并赋值: 默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此 ...
- 嵌套结构体初始化的几种方式
嵌套结构体初始化的几种方式 #结构体定义 structA define typedef struct {char a;int b;float c; }struct_A_s; structB defin ...
- 结构体初始化的几种方式
结构体初始化的几种方式 无构造方法的结构体初始化 创建一个结构体 struct STUDENT {string name;int age;string sex; } 定义时赋值 // 定义时赋值,通过 ...
- C++11 std::shared_ptr的std::move()移动语义底层分析
std::shared_ptr的std::move()移动语义底层分析 执行std::move()之前: 执行std::move()之后: 结论:一个浅拷贝 sizeof(std::shared_pt ...
- 【Spring MVC学习】WebApplicationContext初始化的三种方式
ApplicationContext是Spring的核心,Context我们通常解释为上下文环境,我想用"容器"来表述它更容易理解一些,ApplicationContext则是&q ...
- java数组初始_java数组初始化的三种方式
第一种方式:通过给定数组长度来赋值: public static void main(String[] args) { // TODO Auto-generated method stub //第一种 ...
最新文章
- 揭秘:一个月不摸鱼能写多少代码?
- C++虚函数表,虚表指针,内存分布
- 结构体+字符串比较大小(HDU1234开门人和关门人 )
- Python中经典类和新式类的区别
- 一文说通Blazor for Server-Side的项目结构
- python网络编程-一些常用有用的函数
- 《Objective-C开发经典教程》
- stm32F4修改时钟频率,更换为8MHz晶振
- csgo手机上看demo_仪表上的车速和手机导航不一样,哪个更准?碰到测速了该看哪个?...
- 【渝粤题库】陕西师范大学163212旅游地理学 作业(专升本)
- 编译DPDK遇到make: *** /lib/modules/3.10.0-693.el7.x86_64/build: no such file or dirortory
- 利用路由器实现VLAN
- 华三交换机配置链路聚合
- jsonp跨域原理解析
- Spring Cloud Gateway(一)为什么用网关、能做什么、为什么选择Gateway、谓词工厂、过滤器配置
- Java8实战读书笔记-第3章 λ表达式
- 中国·乌镇互联网产业园项目总投资约100亿元
- 如何用计算机玩扫雷,扫雷怎么玩_玩好扫雷游戏的技巧是什么【图文】-太平洋电脑网PConline-太平洋电脑网...
- Matlab实现图像简单的几何校正
- 文本数据分析:删除停用词