찾다

 >  Q&A  >  본문

C++中, 结构体外定义位域有什么好处?

比如

uint8 bPendingNetUpdate:1;

取代bool型变量。

实际上这个东西真地只占一个bit吗?

ringa_leeringa_lee2772일 전440

모든 응답(1)나는 대답할 것이다

  • 高洛峰

    高洛峰2017-04-17 15:19:17

    是占一个bit,不过结构体为了内存对齐会有padding,所以仅仅一个位域其实并不节省内存。。
    紧凑一点就会有节省内存的效果了,比如连着好几个这种类型的标志变量,肯定比bool节省内存

    회신하다
    0
  • 취소회신하다