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

C++避坑小知识

引子:本文仅仅用作检查小错误,可以是一篇专辑

一,C++11中已经去除了auto声明自动类型变量的功能,只可以用来进行变量类型推导

二,对于STL提供的所有容器,均可以使用for依次访问器元素

三,final修饰类时,表示该类不能被继承,修饰派生类的虚函数时,表示该虚函数不能被子类继承,另外,继承的虚函数地址没有改变,重写的虚函数地址改变,

四,多态是指允许不同类的对象对同一消息做出响应的能力,即同一个接口可以被不同的实例以不同的方式实现。多态分为编译时多态(静态多态,通过函数重载实现)和运行时多态(动态多态,通过虚函数实现)。

五,override只能修饰子类的虚函数,帮助用户检测是否派生类是否对基类总的某个虚函数进行重写

六,栈区上的对象不需要释放,函数结束时编译器会自动释放,堆上分配的需要手动释放。

七,weak_ptr没有借助RAII的思想管理资源

八,.给定一棵二叉搜索树,根据节点值大小排序所需时间复杂度是线性的

九,编译时的多态性可通过函数重载实现,编译期间,编译器主要检测代码是否违反语法规则,此时无法知道基类的指针或者引用到底引用那个类的对象,也就无法知道调用那个类的虚函数。在程序运行时,才知道具体指向那个类的对象,然后通过虚表调用对应的虚函数,从而实现多态

十,抽象类可以定义指针,而且经常这样做,其目的就是用父类指针指向子类从而实现多态

十一,父类对象的虚表与子类对象的虚表没有任何关系,这是两个不同的对象

十二,在C++中,整型除法的结果是向零取整,这意味着如果除数和被除数符号相反并且被除数绝对值比除数绝对值小,结果将是0而不是负数

十三,.在派生类对象销毁时,先调用子类析构函数,后调用子基类析构函数

敬请期待!


http://www.kler.cn/a/286233.html

相关文章:

  • 【LLM】Ollama框架入门指北
  • 浅谈AI的发展对IT行业的影响
  • 低代码产品插件功能一览
  • 1.Template Method 模式
  • 数据结构与算法之栈: LeetCode 739. 每日温度 (Ts版)
  • 98.1 AI量化开发:长文本AI金融智能体(Qwen-Long)对金融研报大批量处理与智能分析的实战应用
  • 短视频流量|基于SprinBoot+vue的短视频流量数据分析系统(源码+数据库+文档)
  • 【华三】不懂链路聚合?看这篇就够了!华三配置详解
  • 公众号里的产品宣传册是如何制作的?
  • 2024HarmonyOS应用开发者高级认证最新整理题库和答案(已收录182道 )
  • 【Qt的TS文件转换器】利用Python实现自动化TS文件转换
  • 疲劳驾驶行为检测检测系统源码分享 # [一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]
  • DNS部署与安全
  • 花店鲜花管理与推荐系统+Python+Django网页界面+管理系统+计算机课设
  • PHP:构建高效Web应用的强大语言
  • ECMAScript和JavaScript区别
  • OpenCV绘图函数(8)填充凸多边形函数fillConvexPoly()的使用
  • Linux中安装Docker环境
  • 域名是什么
  • 简单了解数据库--笔记03
  • 依赖倒置原则详细介绍
  • Kubernetes 网关流量管理:Ingress 与 Gateway API
  • 国产游戏技术的未来
  • Leetcode 621. 任务调度器
  • Spring Cloud Gateway的使用
  • 高防服务器中的流量清洗是什么意思?