C++ context,static,mutable,voliate关键字

1. context +:常量,值不可修改;

       普通函数参数  -- 防止参数被修改 

       普通函数返回值  -- 返回值不能作为左值使用,既不能赋值也不能被修改;

       类的成员函数 后边  --此函数不能修改该对象的(除被mutable修饰)所有成员变量;

2. static +:局部变量 -- 不受作用域限制,存在整个程序运行时,结束才被释放,但只能被包含的函数调用;

    全局变量 -- 是能该文件访问,防止多文件时名称冲突;

    普通函数--内存中只会有一份,每次调用的都是同一片内存;

    成员函数 -- 属于整个类,不属于某个对象,只能调用static 成员变量,static 成员变量同理;

    不存在 context static 成员函数;因为context单位是对象,static单位是类;

3. voliate :背景:多核cpu时的cache刷新到主存不同步带来的问题;

     +使用它,则保证每次都从主存中读取,防止编译器对它进行优化,从cache中读;

      

posted @ 2021-06-23 22:06  花花公子1234  阅读(436)  评论(0)    收藏  举报