C++ 复制指针所指向的对象 make_shared shard_ptr

Posted 软件工程小施同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 复制指针所指向的对象 make_shared shard_ptr相关的知识,希望对你有一定的参考价值。

// make_shared example
#include <iostream>
#include <memory>
 
int main () 
 
  std::shared_ptr<int> foo1 = std::make_shared<int>();
  *foo1=1;
  std::cout << "*foo1: " << *foo1 << '\\n';
  
  std::shared_ptr<int> foo2 = std::make_shared<int>(*foo1);
  
  std::cout << "*foo2: " << *foo2 << '\\n';
  
  *foo2=2;
  
  std::cout << "*foo1: " << *foo1 << '\\n';
  std::cout << "*foo2: " << *foo2 << '\\n';
 
  return 0;

以上是关于C++ 复制指针所指向的对象 make_shared shard_ptr的主要内容,如果未能解决你的问题,请参考以下文章

linux C++共享指针(std::shared_ptrstd::make_shared)共享对象,reset()重置共享指针,use_count()查看引用计数

如何复制 C++ 指针数据? [复制]

C++中,啥是深拷贝?啥是浅拷贝?

动态内存与智能指针

如何正确复制给定 shared_ptr 的对象

C++ 浅拷贝 & 深拷贝