前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >c++ 提供解决内存泄漏的方法是(面试必备)

c++ 提供解决内存泄漏的方法是(面试必备)

作者头像
程序员小王
发布2019-05-15 11:05:14
3.2K0
发布2019-05-15 11:05:14
举报
文章被收录于专栏:架构说架构说架构说

问题: 自己提问

分析

你问答: 智能指针呀, 封装成对象, 代码检查 .第三方工具 这都是不是问题重点.

其实 考察 c++ 知识,跟其他工具没有任何关系 考察 c++ 知识,跟其他工具没有任何关系

考察 c++ 知识,跟其他工具没有任何关系

马甲一换,自己就不知道了

看来自己根本平时只知道记忆 根本没有深入思考过

引用

C++语言的设计和演化 提到引用特殊作用

  • 用引用代替指针,多用栈 而不是堆, 那就是使用 Coroutine
  • C/C++ 协程库 libco:微信怎样漂亮地完成异步化改造

异步化改造方案的考量当时我们有两种选择: A 线程异步化:把所有服务改造成异步模型,等同于从框架到业务逻辑代码的彻底改造 B 协程异步化:对业务逻辑非侵入的异步化改造,即只修该少量框架代码 https://www.infoq.cn/article/CplusStyleCorourtine-At-Wechat

  • 异步 怎么epoll 和stack结合起来了呢?请看连接

谈谈你对堆栈理解

小王升职记 进程和线程的区别

面向对象编程(OOP)-类

  • 每个C++类都有自己的对象模型,分别占用不同空间,他们之间相互隔离。减少内存操作风险(全局数据除外) 自己函数操作自己的数据
  • c++ 提供 构造函数(成员初始化顺序),拷贝构造函数(按照成员拷贝)。virutal函数(虚析构函数)更加复杂功能 保证复杂继承和组合关系类情况下对象申请,释放和拷贝的安全

站在对象模型的尖端

book 深入探索C++对象模型

stl--编程范式(万恶的函数指针)

斯坦福大学公开课:编程范

https://www.youtube.com/watch?v=Ps8jOj7diA0&list=PL16E9AC7DC9DB8CB3

第一部分:泛型编程, 第 1~3 章, 讨论了从 C 到 C++ 的泛型编程方法,并系统地总结了编程语言中的类型系统和泛型编程的本质。

第二部分:函数式编程, 第 4 章和第 5 章,讲述了函数式编程用到的技术,及其思维方式,并通过 Python 和 Go 修饰器的例子,展示了函数式编程下的代码扩展能力,以及函数的相互和随意拼装带来的好处。

第三部分: 面向对象编程, 第 6~8 章,讲述与传统的编程思想相反,面向对象设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象, 列举了面向对象编程的优缺点,基于原型的编程范式,以及 Go 语言的委托模式。

第四部分: 编程本质和逻辑编程, 第 9~11 章, 先探讨了编程的本质:逻辑部分才是真正有意义的,控制部分只能影响逻辑部分的效率,

然后结合 Prolog 语言介绍了逻辑编程范式, 最后对程序世界里的编程范式进行了总结,对比了它们之间的不同。

编程范式游记(1)- 起源序

http://themis.hirgb.com/2016/01/01/programming-paradigm-travel-1-origin/

编程范式游记(2)- 泛型编程

http://themis.hirgb.com/2016/01/02/programming-paradigm-travel-2-generic-programming/ (C++ 语言的设计和演化)

编程范式游记(3)- 类型系统和泛型的本质

http://themis.hirgb.com/2016/01/03/mouse/programming-paradigm-travel-3-the-nature-of-the-type-system-and-generics/

编程范式游记(4)- 函数式编程

http://themis.hirgb.com/2016/01/04/mouse/programming-paradigm-travel-4-functional-programming/

编程范式游记(5)- 修饰器模式

http://themis.hirgb.com/2016/01/05/mouse/programming-paradigm-travel-5-decorator-mode/

编程范式游记(6)- 面向对象编程

http://themis.hirgb.com/2016/01/06/mouse/programming-paradigm-travel-6-object-oriented-programming/

编程范式游记(7)- 基于原型的编程范式

http://themis.hirgb.com/2016/01/07/mouse/programming-paradigm-travel-7-prototype-based/

编程范式游记(8)- Go 语言的委托模式

http://themis.hirgb.com/2016/01/08/mouse/programming-paradigm-travel-8-the-entrustment-pattern-of-go-language/

编程范式游记(9)- 编程的本质
编程范式游记(10)- 逻辑编程范式

http://themis.hirgb.com/2016/01/10/mouse/programming-paradigm-travel-10-logical-programming-paradigm/

编程范式游记(11)- 程序世界里的编程范式

http://themis.hirgb.com/2016/01/11/mouse/programming-paradigm-travel-11-programming-paradigm-in-the-program-world/

RAII&&智能指针

C++提供了三种智能指针:std::shared_ptr ; std::uniq_ptr ; std::weak_ptr

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Offer多多 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题: 自己提问
  • 引用
  • 面向对象编程(OOP)-类
  • stl--编程范式(万恶的函数指针)
    • 编程范式游记(1)- 起源序
      • 编程范式游记(2)- 泛型编程
        • 编程范式游记(3)- 类型系统和泛型的本质
          • 编程范式游记(4)- 函数式编程
            • 编程范式游记(5)- 修饰器模式
              • 编程范式游记(6)- 面向对象编程
                • 编程范式游记(7)- 基于原型的编程范式
                  • 编程范式游记(8)- Go 语言的委托模式
                    • 编程范式游记(9)- 编程的本质
                      • 编程范式游记(10)- 逻辑编程范式
                        • 编程范式游记(11)- 程序世界里的编程范式
                        • RAII&&智能指针
                        相关产品与服务
                        腾讯云代码分析
                        腾讯云代码分析(内部代号CodeDog)是集众多代码分析工具的云原生、分布式、高性能的代码综合分析跟踪管理平台,其主要功能是持续跟踪分析代码,观测项目代码质量,支撑团队传承代码文化。
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档