![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试
kangshuaibing
这个作者很懒,什么都没留下…
展开
-
20210420面试总结
原子类型_atomic在新标准C++11,引入了原子操作的概念,并通过这个新的头文件提供了多种原子操作数据类型,例如,atomic_bool,atomic_int等等,如果我们在多个线程中对这些类型的共享资源进行操作,编译器将保证这些操作都是原子性的,也就是说,确保任意时刻只有一个线程对这个资源进行访问,编译器将保证,多个线程访问这个共享资源的正确性。从而避免了锁的使用,提高了效率。用过哪些c++11的特性 c++11自动类型推导 右值引用、移动转发 智能指针多个线程如何维护同一个引用计数原创 2021-04-20 20:55:35 · 99 阅读 · 0 评论 -
C++常考问题
链接:https://www.jianshu.com/p/3a3b6b5b93311. 多态是什么(语义上什么意思,语法怎么实现)?虚函数是什么?虚函数底层怎么实现的?多态字面上即为多种形态,具体到C++中即为面向对象程序设计中针对一个接口进行多种实现,比如使用同一个成员名来调用类对象的成员函数产生不同的行为。静态多态是指编译时候的多态,通过函数重载或者运算符重载实现。真正的多态应该是动态(运行期)多态,语法上通过虚函数与基类指针共同作用实现。虚函数通过关键字virtual声明,告知编译器不转载 2020-09-27 09:18:23 · 376 阅读 · 0 评论 -
C++常见面试问题汇总6——计算机网络
请你说一说TCP的三次握手和四次挥手的过程及原因 TCP建立连接和断开连接的过程:C-> SYN -> SS->SYN/ACK->CC->ACK->S三次握手的原因:三次握手可以防止已经失效的连接请求报文突然又传输到服务器端导致的服务器资源浪费。例如,客户端先发送了一个SYN,但是由于网络阻塞,该SYN数据包在某个节点长期滞留。然后客户端又重传SYN数据包并正确建立TCP连接,然后传输完数据后关闭该连接。该连接释放后失效的SYN数据包才到达服务..原创 2020-09-23 12:37:53 · 492 阅读 · 0 评论 -
sizeof和sizeof(string)问题
转自:https://www.cnblogs.com/wanghetao/archive/2012/04/04/2431760.html今天看《程序员面试宝典》一书(为了应付将要到来的微软笔试),看到了sizeof(string)这个问题。在Dev C++上测试的结果是4,很不明白。上网搜了一下,得到如下结果:string strArr1[]={"Trend", "Micro", "Soft"};sizeof(strArr1)=12转自:http://apps.hi.baidu.com.原创 2020-09-20 18:02:01 · 740 阅读 · 0 评论 -
C++常见面试问题汇总5——数据库
关系型和非关系型数据库的区别(各自优点) 常用SQL语句(DDL,DML,DCL,TCL) 数据库中join的类型与区别(inner join, outer join, cross join, natural join, self join),注意适用场景和sql语句的编写 数据库的索引类型 聚集索引和非聚集索引的区别(叶节点存储内容) 唯一性索引和主码索引的区别 索引的优缺点,什么时...原创 2020-04-28 10:24:36 · 1007 阅读 · 0 评论 -
C++常见面试问题汇总4——Linux
Linux常用的命令 Linux的I/O模型介绍以及同步异步阻塞非阻塞的区别(超级重要) 1) 阻塞 I/O(blocking I/O)2) 非阻塞 I/O (nonblocking I/O)3) I/O 复用 (select 和poll) (I/O multiplexing)4) 信号驱动 I/O (signal driven I/O (SIGIO))5) 异步 I/O...原创 2020-04-26 16:02:36 · 295 阅读 · 0 评论 -
C++常见面试问题汇总3——算法
时间复杂度的计算方式(Master公式计算递归函数的时间复杂度) 红黑树的了解(平衡树,二叉搜索树),使用场景平衡树是为了解决二叉查找树退化为链表的情况,而红黑树是为了解决平衡树在插入、删除等操作需要频繁调整的情况。红黑树在STL上的应用 贪心算法和动态规划的区别 判断一个链表是否有环,如何找到这个环的起点 实现一个strcpy函数(或者memcpy),如果内存可能重叠呢 实现...原创 2020-04-23 15:45:43 · 469 阅读 · 0 评论 -
C++常见面试问题汇总2——STL
C++的STL源码(这个系列也很重要,建议侯捷老师的STL源码剖析书籍与视频),其中包括内存池机制,各种容器的底层实现机制,算法的实现原理等) STL源码中的hashtable的实现 STL中unordered_map和map的区别和应用场景 STL中vector的实现 STL容器的几种迭代器以及对应的容器(输入迭代器,输出迭代器,前向迭代器,双向迭代器,随机访问迭代器)顺序容器...原创 2020-04-21 15:21:20 · 315 阅读 · 0 评论 -
C++常见面试问题汇总1——基本语法
指针和引用的区别 指针有自己的一块空间,而引用只是一个别名。 不存在空引用。引用必须连接到一块合法的内存。 一旦引用被初始化为一个对象,就不能被指向到另一个对象。指针可以在任何时候指向到另一个对象。 引用必须在创建时被初始化。指针可以在任何时间被初始化。 堆和栈的区别 C++ 程序中的内存分为两个部分:栈:在函数内部声明的所有变量都将占用栈内存。 堆:这是程序中未...原创 2020-04-20 16:11:21 · 964 阅读 · 0 评论