实现sizeof

//类对象的sizeof,思路:类对象取地址加1  减去类对象地址 

#define sizeof_v(x)  ((char*)(&x+1) - (char*)(&x))

//类的sizeof,思路:将0转换成类的指针,加1,就是类所占地址大小,再强制转换成size_t

#define sizeof_t(x)  (size_t)((x*)0+1)

 

//对齐:将v按b的整数倍对齐,b必须是2的倍数

#define ALIGN(v, b)    ( (v+b-1) & ~(b-1))

posted @ 2017-12-25 17:14  Nice vinke  阅读(231)  评论(0编辑  收藏  举报