Life is Good.

Enhance Tech and English
随笔 - 65, 文章 - 20, 评论 - 21, 引用 - 0
数据加载中……

mutable

mutable英音:'mju:təbl美音:'mjutəb!,形容词,意为易变的;反复无常的。在C++语言中,是命令语言——如果一个函数被const 修饰,那么它将无法修改其成员变量的,但是如果这个成员变量是被mutable修饰的话,则可以修改。

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

在c++的类中, 如果一个函数被const 修饰,那么它将无法修改其成员变量的,但是如果这个成员变量是被mutable修饰的话,则可以修改。

例如:
struct data
  {
  
char name[30];
  mutable 
int accesses;
  .
  };
  
const data veep = {"david";,0,}
  strcpy(veep.name,
"Jimmy");// not allowed
  veep.accesses++// allowed

 veep 的const限定符禁止程序修改veep的成员,但access成员的mutable说明符表示access不受这种限制。

posted on 2011-06-23 10:39 Mike Song 阅读(191) 评论(0)  编辑 收藏 引用 所属分类: C/C++


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理