[C++后端开发]面试准备

待更~


1.C/C++基础

  • C++多态性
    多态分为静态多态和动态多态。
    (1)静态多态是通过重载和模板技术实现,在编译的时候确定。
    (2)动态多态通过虚函数和继承关系来实现,执行动态绑定,在运行的时候确定
  • 浅拷贝与深拷贝的区别
  • public、private、protected的区别
  • 三种智能指针
    (1)auto_ptr
    (2)shared_ptr
    (3)weak_ptr
  • 四种cast
    (1)dynamic_cast
    (2)static_cast
    (3)reinterpret_cast
    (4)const_cast
  • class和struct的区别
    使用class和struct定义类唯一的区别就是默认访问权限。
    class默认为private
    struct默认为public
  • static
  • volatile
  • 位域
  • 字节序

2.操作系统

  • 死锁
    若以下四个必要条件同时成立,就会产生死锁:
    (1)互斥
    (2)占有并等待
    (3)非抢占
    (4)循环等待
  • 虚拟内存

3.计算机网络

  • 三次握手和四次挥手
  • TCP与UDP的区别
    (1)UDP在传送数据前不需要建立连接
    (2)TCP提供面向连接的服务
  • select和epoll的区别
  • TCP如何保证可靠连接

4.数据库

5.分布式

  • CAP理论
    (1)一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本)
    (2)可用性(A):在集群中一部分节点故障后,集群整体是否还能响应客户端的读写请求。(对数据更新具备高可用性)
    (3)分区容错性(P):以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择。

你可能感兴趣的:(C/C++)