#include <iostream>
using namespace std;
struct data {
int name[20];
mutable int y;//mutable可以声明该变量虽然前面加了const,但是mutable的变量也可以修改,
};
int main() {
const struct data cc={{1,2,3},1};
cout<<"cc.name[0] = "<<cc.name[0]<<endl;
cout<<"cc.y = "<<cc.y<<endl;
cc.y++;
cout<<"cc.y = "<<cc.y<<endl;
cc.y++;
cout<<"cc.y = "<<cc.y<<endl;
}
输出结果是:
F:\untitled2\cmake-build-debug\untitled2.exe
cc.name[0] = 1
cc.y = 1
cc.y = 2
cc.y = 3
进程已结束,退出代码为 0
可以看到const定义的值被修改了
713

被折叠的 条评论
为什么被折叠?



