C++最佳编程实践

C++最佳编程实践_第1张图片

书籍推荐:

C++最佳编程实践_第2张图片

C++最佳编程实践_第3张图片

C++最佳编程实践_第4张图片

C++最佳编程实践_第5张图片

C++最佳编程实践_第6张图片

  • 蓝色部分
  • 只需要一个实参即可,因为有一个默认设定
  • 没有关键字explicit

C++最佳编程实践_第7张图片

C++最佳编程实践_第8张图片

  • exlicit这个关键字用的很少
  • 一般用在构造函数的前面

C++最佳编程实践_第9张图片

  • 上图中的reference使用的是设计模式中的代理方式

智能指针

C++最佳编程实践_第10张图片

  • 智能指针听课的时候没怎么明白

C++智能指针简单剖析

  • 没有智能指针,必须保证new对象能在正确的时机delete,智能指针能够保证自动释放内存对象

上面课程举例的shared_ptr,源自boost库,后被收录到C++11标准的TR1库中

C++中的动态内存与智能指针(伯乐在线)

上述的这篇博文
内存泄露
野指针
引用计数型的智能指针


#include
#include

using namespace std;

int main(){

        shared_ptr<int> spi(new int(1024));
        cout<<"spi:"<<*spi<<'\n';

        return 0;
}

这里写图片描述

cout<<"spi:"<'\n';

这里写图片描述

用法

你可能感兴趣的:(C/C++,C++)