码迷,mamicode.com
首页 > 编程语言 > 详细

C++ volatile和mutable

时间:2020-05-11 13:32:17      阅读:70      评论:0      收藏:0      [点我收藏+]

标签:cpp   table   tab   设值   har   假设   其他   str   ++   

volatile:

  • 功能:即使程序不修改内存单元,值也会发生变化(硬件或其他程序修改)

  • 作用:改善编译器的优化能力(编译器默认将常用·假设值不变的变量加入寄存器,使用 volatile 后将不优化)

mutable:

指出即使结构或类变量为 const ,其某个成员也可以被修改

struct data
{
    char name[20];
    mutable int accesses;
    ...
};

const data veep{"Claybourne Clodde",0,...};
strcpy(veep.name, "Joye Joux");    //not allowed
veep.accesses++;        //allowed

  

C++ volatile和mutable

标签:cpp   table   tab   设值   har   假设   其他   str   ++   

原文地址:https://www.cnblogs.com/suui90/p/12868158.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!