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

开封做网站哪家好有没有教如何做衣服的网站

开封做网站哪家好,有没有教如何做衣服的网站,wordpress英文字体样式,gg模板网什么是智能指针? 智能指针就像你的"智能小管家",帮你自动管理内存,不用再担心忘记释放内存导致泄漏的问题。 三种常用智能指针 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/570452.html

相关文章:

  • 建设电影网站360网站兼容模式
  • ssl aws wordpress遂宁网站seo
  • 网站做支付宝支付接口洛克设计平台
  • 规划设计 网站 网站结构互联网后端开发
  • 网站 必须有的功能自己电脑做网站服务器违法吗
  • 深圳网页制作与网站建设公司住房建设部官方网站
  • 中外商贸网站建设平台推广方案经典范文
  • 微信长图的免费模板网站本地wordpress模板编辑器
  • 江门网站推广软件郑州做网站外包的公司有哪些
  • 常州网站建设方案维护黄石港区建设局网站
  • 山东省工程建设协会网站文娱热搜榜
  • 怎么描述网站主页做的好有没有专门做包装设计的网站
  • 国外响应式网站模板韩国风格网站模板下载
  • 阿里云大学 网站建设深圳市网站建设公司设计公司
  • 宁夏建设厅网站首页邳州网站
  • 怎样做建网站做淘客输入关键词搜索
  • 房地产项目网站建设国际网站推广专员招聘
  • a站是哪个app成都本地推广平台
  • 广东省建设厅官方网站多少钱wordpress锚文本
  • 陵水网站建设费用海外网络推广平台
  • 微分销手机网站制作山西 网站建设
  • 汽车租赁网站的设计与实现wordpress图片云储存
  • 新站整站排名优化火速公司用jsp做的网站
  • 网站开发需要做什么没有网站可以做app吗
  • 个人交互网站北京朝阳区邮编
  • 做百度移动端网站软件下载dw软件官网
  • asp.net mysql 网站开发社区推广活动方案
  • 行业网站建设的开发方案渭南免费做网站公司
  • 手机建行网站求推荐专门做借条的网站
  • 网站流量分析报告查询网站入口