竞技世界2020春招C++服务端技术面一面凉

    1. C99里定义了一个特性xxxxx我直接说的不知道
    1. c++虚继承是什么?不会,我只知道虚函数实现类继承多态
    1. memcpy和memmove知道吗?参数?怎么实现?只说出来了一个cpy通过mv实现,move又怎么实现?我说就源地址加偏移量移动到目的地址加偏移量呗(他是想问移动过程中会出现什么问题,我说会出现覆盖的情况。怎么解决?我说判断安全距离。具体?我说从尾部开始复制也可以,他说从头尾复制分情况讨论就可以了。那我表达的意思已经包含这两种情况了啊抓狂)
    1. 刚开始我听成了uint32中只包含一位1的数有多少,我还很疑问,不就32个嘛,所以写了个从2的0次方累加到2的31比方输出32。他说带个数进去不对,我一想是题意互相理解错了,他是想问某个uint32里有多少个1。
  • 这个答用移位的思想计算1的个数。

    1. 空类占空间多大?应是1,如果不空就是类里成员变量大小
    1. C++链式序列化容器有哪些?我说了个list。实际上可以用链表实现的序列化数据结构都算,比如栈、队
    1. list和vector区别 map和unorderedmap实现和区别
    1. 说说你学过的排序算法,我挨个讲原理,他说只说复杂度就可以,又问了个快排原理
    1. 对一组数分类,第一个算法对于某个元素若大于100移动到数组a,小于100移动到数组b;第二个算法先把大于100的移动到数组a,再把小于100的移动到数组b。哪个复杂度高?现实情况是第二个更有效率,为什么?应从计算机体系结构指令方面回答。