例如:
class a{...};
a b const;
另外也解释对象函数的a c() const;
可以吗?我用vc++ 6.0 得到的错误是:modifiers not allowed on nonmember functions
也就是说:不可以用在非成员函数上
不好意思,我找不到啊!我是看书时见到的问题,忘了在哪一页了……
我看的是钱能的那本经典,460多页。我以后有机会见到那个代码我再贴上来,不好意思了,
以后还要麻烦你呢~~~
[此贴子已经被作者于2004-09-01 21:30:20编辑过]
void CWmenuView::Dump(CDumpContext& dc) const { CView::Dump(dc); }
在函数后面加一个const是什么意思呀?
对,我就是要问这个!!!我那天看书就是看到类似的!书上没有给出解释。
我个人认为应该是限制不修改传给函数的类,但是为什么写在外面?
这个呀,跟你原来的描述可不一样呦!!
它表示 , 该成员函数不改变成员变量的值,表示只读
比如有个类定义如下:
class some
{
private:
int a;
public:
int func() const;
}
对func的定义,如果是:
int some::func() const
return a;
没有错误,因为没有改变类中的成员变量
但是,如果这样:
a++; //出错,改变了类的成员变量
明白了?其实钱能那本书上讲的很详细的!!