C++面试题
石院情歌小王子
所有博文仅为日后复习方便查找,无其他用途,部分非原创,因标记转载较繁琐,所以标记为原创,无他意
展开
-
C++面试宝典:智能指针简介(shared_ptr实现)
原文:C++面试宝典:智能指针简介(shared_ptr实现)_huangyitai的博客-CSDN博客原创 2022-03-21 17:18:30 · 1395 阅读 · 0 评论 -
C++静态成员和非静态成员的区别
原文:C++静态成员和非静态成员的区别_mtOS1573的博客-CSDN博客 1.数据成员可以分静态变量、非静态变量两种. 静态成员:静态类中的成员加入static修饰符,即是静态成员.可以直接使用类名+静态成员名访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员不能访问非静态的成员..因为静态成员存在于内存,所以非静态成员可以直接访问类中静态的成员.静态成员在每个类中只有一个拷贝,是解决同一个类的不同对象之间数据和函数共享问题的。 非成静态员:所有没有加Stat..原创 2022-03-21 17:01:05 · 844 阅读 · 0 评论 -
多线程及C++面试宝典
史上最全的C++面试宝典(九)—— 多线程_最靓的仔的博客-CSDN博客_c++多线程面试题 史上最全的C++面试宝典(合集)_最靓的仔的博客-CSDN博客_c++面试宝典原创 2022-03-21 14:48:34 · 1701 阅读 · 0 评论 -
C++11新特性
C++11新特性梳理 - 杭河苇 - 博客园原创 2022-03-18 17:04:52 · 517 阅读 · 0 评论 -
set,multiset,unordered_set
set是关联式容器。在set中每个元素的值都唯一(multiset中一个值可以出现多次),而且系统能根据元素的值自动进行排序,所以不能指定插入位置。应该注意的是set中数元素的值不能直接被改变(不能使用at()和[ ]操作符),如果希望修改一个元素的值,必须先删除原有的元素,再插入新的元素。C++ STL中标准关联容器set, multiset, map, multimap内部采用的就是一种非常高效的平衡检索二叉树:红黑树 unordered_set基于哈希表(关键码值映射到Hash表中一个位置来访问记录原创 2022-03-18 16:47:55 · 950 阅读 · 0 评论 -
c++ map与unordered_map区别及使用
map:map内部实现了一个红黑树,红黑树具有自动排序的功能,因此map内部的所有元素都是有序的,使用中序遍历可将键值按照从小到大遍历出来 unordered_map: unordered_map内部实现了一个哈希表(也叫散列表,通过把关键码值映射到Hash表中一个位置来访问记录,查找的时间复杂度可达到O(1),其在海量数据处理中有着广泛应用)。因此,其元素的排列顺序是无序的 时间复杂度: map和multimap:插入: O(logN),查看:O(logN),删除:O(logN); unorder原创 2022-03-18 16:12:13 · 112 阅读 · 0 评论 -
C++中指针和引用的区别
C++中指针和引用的区别原创 2022-03-18 15:43:29 · 316 阅读 · 0 评论 -
new和malloc的区别
1 属性 new和delete是C++关键字,需要编译器支持;malloc和free是库函数,需要头文件支持。 2 参数 使用new操作符申请内存分配时无须指定内存块的大小,编译器会根据类型信息自行计算。而malloc则需要显式地指出所需内存的尺寸。 3 返回类型 new操作符内存分配成功时,返回的是对象类型的指针,类型严格与对象匹配,无须进行类型转换,故new是符合类型安全性的操作符。而malloc内存分配成功则是返回void * ,需要通过强制类型转换将void*指针转换成...原创 2022-03-18 15:03:39 · 98 阅读 · 0 评论 -
C++内存管理
C++内存管理(超长,例子很详细,排版很好)_草根caogen的博客-CSDN博客_c++ 内存管理原创 2022-03-18 14:51:57 · 385 阅读 · 0 评论 -
哪些函数不能定义为虚函数?
1)友元函数,它不是类的成员函数 2)全局函数 3)静态成员函数,它没有this指针 3)构造函数,拷贝构造函数,以及赋值运算符重载(可以但是一般不建议作为虚函数)原创 2022-02-25 16:04:23 · 181 阅读 · 0 评论 -
weak_ptr的作用及应用场景——shared_ptr的循环引用问题
https://blog.csdn.net/LLZK_/article/details/52431404原创 2020-04-03 19:50:25 · 319 阅读 · 0 评论 -
C++面试题:谈谈你对多态的理解
从现象到原理逐一叙述: 多态的实现效果: 同样的调用语句有多种不同的表现形态;同样一个函数,在不同的子类、父类穿梭的时候表现出不同的形态 多态实现的三个条件: (1)要有继承 (2)要有virtual重写 (3)要有父类的指针指向子类的对象 多态的C++实现: 使用virtual关键字,告诉编译器这个函数要支持多态,不是根据指针类型判断如何调用,而是要根据指针所指向的实际对象类型来...原创 2019-03-07 17:26:23 · 809 阅读 · 0 评论