只有三行,看一下吧?/很简单的。 class A{public: int vf() const; ......} 其中的是什么意思呀,为什么后面要加一个,它有什么用呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 class A{public: int vf() const; ......} 其中的是什么意思呀,为什么后面要加一个,它有什么用呢? 表示class A{public: int vf() const; int m_nData; ......}int A::vf() const{ m_nData=8;//Error! Can't modify the member data.} 但是下面的代码就可以了class A{public: int vf() const; mutable int m_nData; ......}int A::vf() const{ m_nData=8;//OK} const成员函数不修改类对象!!!但是可以通过其他手段(不建议这么用,在万不得意的情况下可以考虑这样做)在const成员函数里面修改类对象。class A {public: A(int nValue = 0) : m_nValue(nValue) {} virtual ~A() {} void vf() const { // !!! A* pA = (A*)this; pA->m_nValue++; } //private: int m_nValue;};还有——如果你声明一个const A类对象变量objA,如果成员函数不是const,则objA.vf()会编译出错! const成员函数不修改类对象 const成员函数不修改类对象 SOCKET句柄被Attach后为什么会断开连接? 急急急,大侠们 帮帮忙啊 vista下如何获取硬盘序列号 应用GetPrivateProfileStruct读取配置表,退出时CStringData::Release()报错 高分求取:如何利用编程实时读取佳能数码相机的图片? 请教高手一个关于树型控件的使用方法 我想把-Doc、-View、CMainFrame框架类都做到DLL中,如何实现? 如何时实检测本机IP地址是否改变了?? 如何不使用钩子就使窗口只能最大化? 《《高分求救》》如何制作*.msi类型的安装文件? 简单却很急的问题。 难道就没有人能给我一个满意的解答吗?哼!
{
public:
int vf() const;
......
} 其中的是什么意思呀,为什么后面要加一个,它有什么用呢?
class A
{
public:
int vf() const;
int m_nData;
......
}
int A::vf() const
{
m_nData=8;//Error! Can't modify the member data.
}
{
public:
int vf() const;
mutable int m_nData;
......
}
int A::vf() const
{
m_nData=8;//OK
}
class A {
public:
A(int nValue = 0) : m_nValue(nValue) {}
virtual ~A() {} void vf() const { // !!!
A* pA = (A*)this;
pA->m_nValue++;
}
//
private:
int m_nValue;
};
还有——如果你声明一个const A类对象变量objA,如果成员函数不是const,则objA.vf()会编译出错!