当前位置: 首页 > wzjs >正文

做网站的程序员进什么公司好北京网站seo公司

做网站的程序员进什么公司好,北京网站seo公司,网站建设标书模板下载,wordpress typecho 大数据什么是智能指针? 智能指针就像你的"智能小管家",帮你自动管理内存,不用再担心忘记释放内存导致泄漏的问题。 三种常用智能指针 unique_ptr - 唯一管家 • 特点:一个对象只能有一个管家 • 不能复制,但可…

什么是智能指针?

智能指针就像你的"智能小管家",帮你自动管理内存,不用再担心忘记释放内存导致泄漏的问题。

三种常用智能指针

unique_ptr - 唯一管家

• 特点:一个对象只能有一个管家

• 不能复制,但可以"交接"(移动)

#include <memory>
#include <iostream>class Dog {
public:Dog(std::string n) : name(n) {}void bark() { std::cout << name << ":汪汪!" << std::endl; }
private:std::string name;
};int main() {// 创建unique_ptrstd::unique_ptr<Dog> myDog = std::make_unique<Dog>("阿黄");myDog->bark();  // 输出:阿黄:汪汪!// 不能这样复制!(报错)// auto otherDog = myDog; // 但可以这样"交接"(移动)auto newOwner = std::move(myDog);if(!myDog) {std::cout << "原主人已经没有狗了" << std::endl;}newOwner->bark();  // 输出:阿黄:汪汪!
}

shared_ptr - 共享管家

• 特点:多个管家可以共同照顾同一个对象

• 通过计数知道有多少个管家在管理

#include <memory>
#include <iostream>class Cat {
public:Cat(std::string n) : name(n) {}void meow() { std::cout << name << ":喵喵~" << std::endl; }~Cat() { std::cout << name << "去喵星了" << std::endl; }
private:std::string name;
};int main() {// 创建shared_ptrstd::shared_ptr<Cat> cat1 = std::make_shared<Cat>("小白");// 复制 - 现在有两个管家std::shared_ptr<Cat> cat2 = cat1;cat1->meow();  // 输出:小白:喵喵~cat2->meow();  // 输出:小白:喵喵~std::cout << "管家数量: " << cat1.use_count() << std::endl;  // 输出:2// 当一个管家离开cat1.reset();std::cout << "现在管家数量: " << cat2.use_count() << std::endl;  // 输出:1
} 
// cat2离开时输出:小白去喵星了

weak_ptr - 观察员管家

• 特点:只观察不管理,不影响对象生命周期

• 需要时可以临时"转正"成shared_ptr

#include <memory>
#include <iostream>class Bird {
public:Bird(std::string n) : name(n) {}void fly() { std::cout << name << "在飞翔" << std::endl; }
private:std::string name;
};int main() {std::shared_ptr<Bird> spBird = std::make_shared<Bird>("小绿");std::weak_ptr<Bird> wpBird = spBird;  // 创建观察员// 需要时转正if(auto temp = wpBird.lock()) {temp->fly();  // 输出:小绿在飞翔}spBird.reset();  // 主人不要鸟了if(wpBird.expired()) {std::cout << "小鸟已经飞走了" << std::endl;}
}

如何复制智能指针?

类型能否复制正确复制方式特点
unique_ptr❌ 不能std::move()移动后原指针变空
shared_ptr✅ 能直接赋值引用计数+1
weak_ptr✅ 能直接赋值不影响引用计数

建议

  1. 优先用make_uniquemake_shared创建
  2. 默认先用unique_ptr,需要共享再用shared_ptr
  3. 两个类互相包含时,记得用weak_ptr避免循环引用

备注

个人能力有限,有问题随时交流~~

http://www.dtcms.com/wzjs/378832.html

相关文章:

  • wordpress 图片缩放插件天津百度搜索排名优化
  • 政府网站集约化建设报告分析百度快速收录账号购买
  • 做中国菜的外国网站浏览器广告投放
  • 网站开发做原型吗美国疫情最新数据消息
  • 中江建设银行网站seo站点是什么意思
  • 免费前端模板网站直接进入网站的代码
  • 莘县建设局网站网页设计需要学什么
  • 做网站开发面临的困难站长之家网站介绍
  • 网站建设谢词排名优化网站建设
  • 自己建设购物网站海南百度推广运营中心
  • 网站开发运营职位长春网站建设平台
  • 网站权重转移做排名创建软件平台该怎么做
  • 电子商务网站建设的核心申请百度账号注册
  • 网站制作q广告开户南京seo
  • 如何建网站并做推广如何推广公众号
  • 如果网站没有icp备案号网站软件下载app
  • 软件开发和网站建设哪个好镇江seo公司
  • 春雨app直播免费版下载seo在线培训机构
  • 农投公司网站建设方案陕西新站seo
  • 怎样做网站吸引客户上海关键词自动排名
  • 电子商务网站设计与...今日头条热点新闻
  • 装饰公司网站模板新媒体营销案例ppt
  • 高端网站建设公司名字搜索引擎推广的常见形式有
  • 哪些做批发的网站比较正规关键词林俊杰百度云
  • 线上推广员的工作内容google seo怎么做
  • 有本地服务器怎么做网站培训总结
  • 宝藏ppt模板免费下载seo技术培训茂名
  • 南昌网站建设公司服务器大学生网络营销策划方案书
  • 一起做网店17网seo实战密码第三版pdf
  • 买机箱网站郑州网站排名推广