C++
文章平均质量分 83
学习记录
内蒙深海大鲨鱼
这个作者很懒,什么都没留下…
展开
-
C++命名空间、条件编译
条件编译是在构建大型项目中常用的方法,我们希望通过它来控制不同的代码段执行,或者根据不同的运行环境来运行对应环境下的代码和库。原创 2024-05-30 11:25:25 · 223 阅读 · 0 评论 -
C++强制类型转换
显式类型转换(强制类型转换)并不能解决隐式转换中可能出现的精度损失或符号丢失等问题,而是用来让程序员可以清晰地表达他们的转换意图,同时在某些情况下允许进行那些隐式转换所不允许的操作一般情况下对于初级学者来说,使用static_cast和dynamic_cast就够了,常量转换和重新解释转换就尽量避免使用static_cast:提供编译时类型转换,常规的数据类型转换用它dynamic_cast:提供运行时类型转换,主要用于多态下,基类指针转为派生类指针const_cast:用于添加或去除常量属性。原创 2024-03-24 15:42:11 · 1826 阅读 · 1 评论 -
C++必知必会 C++11实用特性
C++11开始添加了很多好用的新特性,个人认为想要真正掌握这些特性还是需要多读代码,多应用这些特性,本文只记录了一些个人用过的,并结合自己的使用体验讲了一下使用场景。原创 2024-03-23 20:54:58 · 2003 阅读 · 0 评论 -
智能指针详解
智能指针本质上来讲是一个存储指向堆内存指针的类,目的就是帮助我们管理内存,一旦使用了智能指针就就尽量使用new产生的指针,因为智能指针只维护同类型指针的引用计数,混用很容易造成内存重复释放的问题。原创 2024-03-23 20:53:18 · 654 阅读 · 0 评论 -
C++必知必会 类和对象
1.目的:避免内存泄漏,在发生多态的时候,子类析构函数如果不是虚析构,无法完成与基类指针的动态绑定,这就意味着子类的析构函数不会被调用,子类对象的空间无法正确被释放。1.浅拷贝:浅拷贝是指将一个对象的内容复制到另一个对象,但是如果有指针指向堆区内存,会出现两个指针指向同一块内存,释放时会造成堆区内容重复释放。一个类从两个基类进行继承,而这两个基类又同时继承于一个类,这样会造成子孙类中有两份祖宗类的数据成员,出现二义性和行为不一致的问题。,拥有纯虚函数的类被称作抽象类,继承抽象类的子类必须重写这个纯虚函数。原创 2024-03-22 23:03:34 · 770 阅读 · 1 评论 -
static的实用
static的一些使用场景原创 2024-03-09 15:48:13 · 421 阅读 · 0 评论