C++基础::shared_ptr 编程细节(一)

C++基础::shared_ptr 编程细节(二)

C++基础::shared_ptr 编程细节(三)

boost::shared_ptr std::shared_ptr

  • 所在的命名空间,所在的头文件

    
    #include <boost/shared_ptr.hpp>     ⇒ boost::shared_ptr#include <memory>               ⇒ std::shared_ptr
  • 便捷函数(make_shared)

    
    #include <boost/make_shared.hpp>⇒ boost::make_shared#include <memroy>⇒ std::make_shared

作为私有成员的共享型智能指针的初始化时机

class A
{
public:A() { std::cout << "A:A()" << std::endl; }
};class B
{
public:B() {std::cout << "B::B()" << std::endl;}// 哪怕只是空参构造的空实现,且无论给不给// 也会自动调用私有成员的默认构造,且调用的时机发生在当前类的构造之前
private:boost::shared_ptr<A> _ptr;A _a;
};int main(int, char**)
{B b;// 只对成员 _a 调用其构造函数//  return 0;
}

C++基础::shared_ptr 编程细节(三)相关推荐

  1. C++基础::shared_ptr 编程细节(二)

    C++基础::shared_ptr 编程细节(一) C++基础::shared_ptr 编程细节(二) C++基础::shared_ptr 编程细节(三) *sp 与 sp.get() sp.get( ...

  2. C++基础::shared_ptr 编程细节(一)

    C++基础::shared_ptr 编程细节(一) C++基础::shared_ptr 编程细节(二) C++基础::shared_ptr 编程细节(三) 智能指针是c++ 中管理资源的一种方式,用智 ...

  3. 《零基础D编程入门三》

    第三章:win系统下安装D 3.1 要求及下载 3.2 文件 3.3 安装 3.4 示列 3.5 连接 3.6 环境变量 3.7 sc.ini 初始化文件 3.8 常见的安装问题 3.9 Window ...

  4. [Java网络编程基础]网络编程概述,三要素,IP地址

  5. WORKNC2018-2017基础到实战编程视频教程 三四五轴 大模编程

    WORKNC2018-2017基础到实战编程视频教程 三四五轴 大模编程 链接:https://pan.baidu.com/s/1fMCumv4y7wD0Jtzzr64vBA 提取码:vn76

  6. 脑残式网络编程入门(三):HTTP协议必知必会的一些知识

    为什么80%的码农都做不了架构师?>>>    本文原作者:"竹千代",原文由"玉刚说"写作平台提供写作赞助,原文版权归"玉刚说&q ...

  7. 非洲瓜哇JAVA布的特点_java语言的基本特性以及编程细节

    前言 java语言的学习是一个体系,所以如果想要对java的编程有一个很精通的一个掌握,它离不开很多基础的知识点,比如JVM的原理.java多线程并发编程.数据结构等等.所以我这里对我学习的java的 ...

  8. 长文梳理Muduo库核心代码及优秀编程细节剖析

    一.前言: 代码地址: https://github.com/yyg192/Cpp11-Muduo-MultiReactor  Muduo库是陈硕个人开发的Tcp网络编程库,支持Reactor模型.本 ...

  9. 嵌入式C程序基础与编程结构

    嵌入式C程序基础与编程结构 Basics of Embedded C Program and Programming Structure 嵌入式C编程是处理器在我们日常生活中遇到的每一个嵌入式系统(如 ...

最新文章

  1. 占用栅格地图算法的理解
  2. 【Mybatis 之应用篇】1_Mybatis简介、第一个Mybatis程序和增删改查在Mybatis中的使用方式
  3. SAP Webclient UI和Fiori UI的混搭
  4. C# 中 for和foreach 性能比较,提高编程性能
  5. 开源自动化部署工具_6种开源家庭自动化工具
  6. Tableau可视化学习笔记:day09-10
  7. [转载] python四种列表的插入方法及其效率
  8. 设计模式之——观察者模式
  9. Atitit ftp概念与ftpclient 目录 1. Concept 1 1.1. Tftp(simple ftp) sftp ssh port22 1 1.2. ftp server
  10. URL和URI的区别及理解
  11. TestStand自定义报表生成-添加列
  12. 远程登陆速达E3PRO服务器出现share violation错误的解决方法.
  13. 智能语音呼叫中心系统
  14. 2021 知来者之可追
  15. 牛客竞赛语法入门班选择结构习题【完结】
  16. SpringBoot+Mybatis实现三级分类联动
  17. HTML 内联元素之间的空隙问题
  18. Aspose.Words 复制表格并将复制的表格插入原有表格后面
  19. 世界第一台通用计算机:ENIAC
  20. C ——进程内存(内存管理、内存分配(brk,sbrk、mmap、munmap)、内存常见错误)

热门文章

  1. git 分支merge主分支 解决冲突
  2. IDEA中Maven项目导入依赖包,出现红线波浪线
  3. mysql 客房_mysql – 酒店客房预订系统的数据库设计
  4. adb命令启动某个action_Android adb shell启动应用程序的方法
  5. php操作excel表格的导入和导出
  6. iOS炫酷动画图案、多种选择器、网络测速、滑动卡片效果等源码
  7. (HDU)1061 --Rightmost Digit( 最右边的数字)
  8. IAR Embedded Workbench IDE 显示行号
  9. CSP202012-2 期末预测之最佳阈值(100分)【序列处理】
  10. Bailian4018 子串【字符串】