c++ const函数中修改类的成员变量
来源:互联网 发布:qq空间mac客户端 编辑:程序博客网 时间:2024/05/17 09:13
mutable member-variable-declaration;
This keyword can only be applied to non-static and non-const data members of a class. If a data member is declared mutable, then it is legal to assign a value to this data member from a const member function.
上面的引自MSDN
举个例子:
#include <iostream>
#include <iomanip>
using namespace std;
class C
{
public:
C(int i):m_Count(i){}
int incr() const//注意这里的const
{
return ++m_Count;
}
int decr() const
{
return --m_Count;
}
private:
mutable int m_Count;//你可以试着将这里的mutable去掉再编译试试
};
void main()
{
C c1(0),c2(10);
for(int tmp,i=0;i<10;i++)
{
tmp = c1.incr();
cout<<setw(tmp)<<setfill(' ')<<tmp<<endl;
tmp = c2.decr();
cout<<setw(tmp)<<setfill(' ')<<tmp<<endl;
}
}
用指针也可以
#include<iostream>
using namespace std;
class A_class
{
public:
int x;
A_class()
{
x=0;
}
void f() const
{
int *p =(int *)&x;
(*p)++;
(*p)++;
(*p)++;
(*p)++;
cout<< x <<endl;
}
};
void main()
{
A_class num;
num.f();
}
- c++ const函数中修改类的成员变量
- const成员函数修改成员变量的问题
- 修改C中const修饰的变量
- C++中修改const成员变量
- C++中修改const成员变量
- const成员函数修改类成员的办法
- C++的声明和定义(针对变量,const变量,C++函数,C函数,类,类的静态成员等)
- C++之类的const成员变量和const成员函数
- 浅谈C++中类的const成员变量,static成员变量和const static成员变量的区别
- 类成员函数中const的使用
- 类成员函数中const的使用
- 类成员函数中const的使用
- 如何修改const类中的变量(或在const函数中修改变量)
- c/c++笔试题——const类型的成员函数内部如何改变成员变量
- c/c++笔试题——const类型的成员函数内部如何改变成员变量
- C++中类的const成员函数和const对象
- c/c++中const成员函数的返回值类型
- 如果在const函数中修改一个变量的值
- 看到这些话,我很气愤!
- Thread.getContextClassLoader() 祥解
- freemarker指令
- 创建型模式--各种工厂模式[读书笔记]
- 委托和事件
- c++ const函数中修改类的成员变量
- javascript 中的utf-8 与 中文的互转
- 想用java调用matlab
- SendEmail 您的主机中的软件放弃了一个已建立的连接。
- 先留个脚印
- Programming Microsoft Internet Explore 5(五)
- 关于google和百度
- HTML头部标记
- 手动修改vc工程名