![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++八股文
文章平均质量分 51
常见C++面试题,简单复杂都有
Rache_Bartmoss
大概会拒绝你司
展开
-
C++八股文【三】四种cast的原理与用途
cast主要用途是用于变量或指针之间的强制转换,内在的基本原理还是指针与内存截取,但是更安全static_cast:它的使用基本上与C中的括号强转没有什么区别,主要用于基本类型的强制转换,比如int32_t 与 short之间,转换规则与C基本一致,对数据的二进制截取,如果结果非法,会返回对应的0值或空指针dynamic_cast:即RTTI:(Run Time Type Identification)通过运行时类型识别,程序能够使用基类的指针或引用来检查着这些指针或引用所指的对象的实际派生类型。co原创 2021-11-28 22:33:25 · 698 阅读 · 0 评论 -
C++ 八股文【二】多态 虚函数指针
要了解C++中的面向对象的特性,除了使用方法外,了解其底层的技术细节对我们编程工作非常有帮助。尤其是了解对象的内存映像、vtable(虚函数表)的构造、vptr(虚函数指针)的插入和初始化时机、构造和析构函数的自动调用时机、对象的构造和析构次序、临时对象的创建和销毁、RTTI(运行阶段类型识别)的底层实习技术等。对象在内存中的布局我们首先看一下简单的非多态类Rectangle的对象内存映像:...原创 2020-02-13 22:21:26 · 880 阅读 · 0 评论 -
C++八股文【一】全局成员与静态成员
1.初始化引用和常量:必须通过构造函数的参数列表的方式初始化。静态变量: 必须在类定义体外进行初始化与定义静态常量:可以直接在类中初始化,也可以在类中声明,在类定义体外进行定义静态成员属于类作用域,但不属于类对象,它的生命周期和普通的静态变量一样,程序运行时进行分配内存和初始化,程序结束时则被释放。所以不能在类的构造函数中进行初始化。静态函数:因为static成员函数没有this指针,所以静态成员函数不可以访问非静态成员。非静态成员函数可以访问静态成员。静态数据成员与类的大小无关,因为静态成原创 2021-11-28 22:04:57 · 971 阅读 · 0 评论