C++面试八股文:std::vector和std::list,如何选择?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第24面: > 面试官:`list`用过吗? > > 二师兄:嗯,用过。 > > 面试官:请讲一下`list`的实现原理。 > > 二师兄:`std::list`被称为双向链表,和C中手写双向链表本质上没有大的区别。`list`对象中有两个指针,一个 阅读全文
posted @ 2023-06-24 18:42 二进制架构 阅读(144) 评论(0) 推荐(2) 编辑

C++面试八股文:std::vector了解吗?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第23面: > 面试官:`vector`了解吗? > > 二师兄:嗯,用过。 > > 面试官:那你知道`vector`底层是如何实现的吗? > > 二师兄:`vector`底层使用动态数组来存储元素对象,同时使用`size`和`capacity`记录 阅读全文
posted @ 2023-06-23 23:34 二进制架构 阅读(257) 评论(0) 推荐(1) 编辑

C++面试八股文:override和finial关键字有什么作用?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第22面: (二师兄好苦逼,节假日还在面试。。。) > 面试官:C++的继承了解吗? > > 二师兄:(不好意思,你面到我的强项了。。)了解一些。 > > 面试官:什么是虚函数,为什么需要虚函数? > > 二师兄:虚函数允许在基类中定义一个函数,然后 阅读全文
posted @ 2023-06-22 23:38 二进制架构 阅读(215) 评论(0) 推荐(0) 编辑

C++面试八股文:用过STL吗?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第21面: > 面试官:用过STL吗? > > 二师兄:(每天都用好吗。。)用过一些。 > > 面试官:你知道STL是什么? > > 二师兄:STL是指标准模板库(`Standard Template Library`),是C++区别于C语言的特征之 阅读全文
posted @ 2023-06-21 23:40 二进制架构 阅读(269) 评论(0) 推荐(1) 编辑

C++面试八股文:static_cast了解一下?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第20面: > 面试官:C++中支持哪些类型转换? > > 二师兄:C++支持C风格的类型转换,并在C++11引入新的关键字规范了类型转换。 > > 二师兄:C++11引入四种新的类型转换,分别是`static_cast`、`dynamic_cast 阅读全文
posted @ 2023-06-20 23:18 二进制架构 阅读(229) 评论(0) 推荐(3) 编辑

C++面试八股文:什么是智能指针?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第19面: > 面试官:什么是智能指针? > > 二师兄:智能指针是C++11引入的类模板,用于管理资源,行为类似于指针,但不需要手动申请、释放资源,所以称为智能指针。 > > 面试官:C++11引入了哪些智能指针? > > 二师兄:三种,分别是`s 阅读全文
posted @ 2023-06-19 23:01 二进制架构 阅读(312) 评论(0) 推荐(1) 编辑

C++面试八股文:std::string是如何实现的?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第18面: > 面试官:`std::string`用过吧? > > 二师兄:当然用过(废话,C++程序员就没有没用过`std::string`的)。 > > 面试官:`std::string("hello")+"world"`、`"hello"+st 阅读全文
posted @ 2023-06-18 19:25 二进制架构 阅读(353) 评论(0) 推荐(0) 编辑

C++面试八股文:聊一聊指针?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第17面: > 面试官:聊一聊指针? > > 二师兄:好的。 > > 面试官:你觉得指针本质上是什么? > > 二师兄:这要从内存地址开始说起了。如果有一块容量是1G的内存,假设它的地址是从`0x00000000` 到`0x3fffffff`,每一个 阅读全文
posted @ 2023-06-17 21:59 二进制架构 阅读(170) 评论(0) 推荐(0) 编辑

C++面试八股文:什么是左值,什么是右值?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第16面: > 面试官:什么是左值,什么是右值? > > 二师兄:简单来说,左值就是可以使用`&`符号取地址的值,而右值一般不可以使用`&`符号取地址。 ```c++ int a = 42; //a是左值,可以&a int* p = &a; int* 阅读全文
posted @ 2023-06-16 23:48 二进制架构 阅读(330) 评论(0) 推荐(0) 编辑

C++面试八股文:了解auto关键字吗?

摘要: 某日二师兄参加XXX科技公司的C++工程师开发岗位第15面: > 面试官:了解`auto`关键字吗? > > 二师兄:嗯,了解一些(我很熟悉)。 > > 面试官:说一说`auto`的用法吧? > > 二师兄:`auto`主要是为了编译器进行类型推导。比如: ```c++ auto i = 42; / 阅读全文
posted @ 2023-06-15 23:05 二进制架构 阅读(584) 评论(5) 推荐(1) 编辑