
面试(C++篇)
文章平均质量分 84
RyanL007
码农的成长之路,不水文章,不蹭流量
展开
-
面试之C++(篇四:其他常见问题)
1.static的作用(1)限制了修饰对象的作用域为本程序文件。外部程序文件不能访问该对象,本文件中的静态或非静态函数都可以调用静态变量和函数。(2)使修饰的对象具备记忆功能和全局生存期,static定义的对象存储在静态存储区。(3)类中定义的静态成员直接用类作用域调用,即 A::func(),A::var。类的静态成员只能够调用该类的静态成员,不能调用非静态成员,这是因为类内非静态成员是通过指向类对象实例的this指针调用的,而静态成员没有this指针。(4)类内声明静态成员时,不占用内存原创 2020-09-02 00:44:33 · 459 阅读 · 0 评论 -
面试之C++(篇三:C++11)
1.为什么引入nullptr(1)在原先的C/C++中常用NULL来表示空,而在不同的编译器中NULL的定义是不同的,例如#define NULL 0,#define NULL (void*)0。有函数void func(int),void func(void*),在不同编译器下可能会调用不同的重载函数,或者出现语义错误。(2)在C++中禁止 void* 隐式转换成其他类型,因此在C++中NULL被定义为0。因此引入了nullptr用于区分NULL和0,nullptr可以隐式转换成任意指针,其类原创 2020-08-31 23:24:56 · 656 阅读 · 0 评论 -
面试之C++(篇二:STL)
1.STL六大组件(1)容器(Container)(2)适配器(Adapter)(3)迭代器(Iterator)(4)算法(Algorithm)(5)分配器(Allocator,又称空间配置器)(6)函数对象(Function Object,又称仿函数)2.常见容器类及其底层实现...原创 2020-08-31 14:41:01 · 449 阅读 · 0 评论 -
面试之C++(篇一:类)
C与C++的区别(1)C是面向过程的结构化编程语言,更加注重逻辑过程,根据输入进行运算并输出;C++是面向对象的语言,更加注重对象模型的构建,使得构建的模型契合问题域,通过定义模型方法来解决问题(2)...原创 2020-08-31 09:27:09 · 627 阅读 · 0 评论