Sha*_*han 3 c++ const function volatile
一个c ++类有一个成员函数,代码如下:
const volatile stats_t& get_stats() const{
return stats;
}
Run Code Online (Sandbox Code Playgroud)
将const和volatile一起使用的原因是什么?这个功能到底是什么功能?如果返回类型是const,它是否与使用volatile的目的相矛盾?
const 不是相反的 volatile
将某事标记为const"这不会被这段代码修改,它是一个常量值/指针/无论什么"
将某些内容标记为volatile"不缓存此值,可能会突然被外部IO操作,中断或其他内容更改"
它们用于不同的目的.const更像是一个" 代码不修改规则 "而挥发性的" 缓存,重新排序和编译器优化规则 "