static_cast<void>(0)与(void)0及在宏中的应用_static_cast<void>(0)_持续学习,不断沉淀的博客-CSDN博客

网站介绍:文章浏览阅读877次。1、static_cast<void>(0)和(void)0的意义:1.1:作用:C++中的的static_cast<void>(0)和C语言的(void)0作用一样,都表示将0强制转换为void类型,表示一个空语句。1.2:原理:任何表达式都可以显示地转换为void类型。而0事实上是一个表达式,所以(void)0的涵义就是将表达式0显示地转换为void类型。转换前后的区别在于:转换之前,表达式0的值为int类型0;而转换之后,表达式(void)0的值为void。2、宏中的_static_cast(0)