当前位置: 代码迷 >> 综合 >> 面试知识点
  详细解决方案

面试知识点

热度:28   发布时间:2024-03-06 00:54:38.0

 


sizeof 是操作符,是编译阶段完成的
实现原理: 
#define sizeof_T(T) ((size_t((T*)0+1))             
求类型的大小
 #define sizeof_V(T) ((size_t)(&T+1)-(size_t)(&T))   求变量的大小
求的就是指针步长


自旋锁(spinlock):是指当一个线程在获取锁的时候,如果锁已经被其它线程获取,那么该线程将循环等待,然后不断的判断锁是否能够被成功获取,直到获取到锁才会退出循环。自旋会一直占用cpu,而互斥锁是睡眠等待

步 隆过滤器和跳表
线程池的实现

一个空类有无参构造函数,有复制构造函数,有赋值操作符函数,有析构函数。如果类empty继承了虚基类,那么析构函数也将会自动被定义为虚函数。
以下情形发生时系统将拒绝生成默认赋值操作函数,但是可以显示定义=操作符
1. 类中含有引用成员
2. 类中含有非静态const型成员
3. 类继承自含有private赋值操作符函数的基类

dynamtic_cast运行时类型检查,static_cast是编译时类型检查,所以下行转化父类转子类不安全

  相关解决方案