摘要:
可以的,例如只读的状态寄存器。它是volatile因为它可能被意想不到地改变。它是const因为程序不应该试图去修改它。 一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值 阅读全文
摘要:
dynamic_cast是四个强制类型转换操作符中最特殊的一个,它支持运行时识别指针或引用。 首先,dynamic_cast依赖于RTTI信息,其次,在转换时,dynamic_cast会检查转换的source对象是否真的可以转换成target类型, 这种检查不是语法上的,而是真实情况的检查。 dyn 阅读全文
摘要:
恢复内容开始 static_cast是一个强制类型转换操作符。强制类型转换,也称为显式转换,C++中强制类型转换操作符有static_cast、dynamic_cast、const_cast、reinterpert_cast四个。 编译器隐式执行的任何类型转换都可以由static_cast来完成,比 阅读全文
摘要:
恢复内容开始 参考博客:https://www.cnblogs.com/QG-whz/p/4513136.html const_cast是一个基于C语言编程开发的运算方法, 其主要作用是:修改类型的const或volatile属性。使用该运算方法可以返回一个指向非常量的指针(或引用)指向b1, 就可 阅读全文
摘要:
原文链接:https://blog.csdn.net/xuwentao37x/article/details/27804169 多线程的程序是出了名的难编写、难验证、难调试、难维护,这通常是件苦差事。不正确的多线程程序可能可以运行很多年也不出一点错,直到满足某些临界的条件时,才出现意想不到的奇怪错误 阅读全文