首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

面试归来--const有关问题

2012-03-25 
面试归来--const问题 面试的GG问偶:ClassA_class{voidf()const{}}1.const的作用?偶答:防止该成员函数修改

面试归来--const问题

面试的GG问偶:

Class   A_class
{
  void   f()   const
    {
      }
}

1.const的作用?
偶答:防止该成员函数修改类成员变量!

接着的问题是:这种情况如果要修改修改类的成员变量应该怎么办?
--晕,那要const干什么啊?--其实偶不懂怎么回答。。。
只能答道:调用别的函数或指针吧。。。

请教各位应该怎么回答?


[解决办法]
将你想在const成员函数中修改的成员变量声名为mutable
[解决办法]
我不知道
[解决办法]
对,用mutable修饰变量,通常情况下用函数和指针是不行的。
[解决办法]
当然用指针也可以实现,强制转换一下即可。
class A_class
{
public:
int x;

A_class()
{
x=0;
}

void f() const
{
int *p =(int *)&x;
(*p)++;
}
};
x的值就可以被修改。
[解决办法]
mark 学习!
[解决办法]
呵呵,面试

学习了

[解决办法]
不懂啊
学习中。。。
[解决办法]
void f() const
{
}
什么意思???
[解决办法]
学习。
[解决办法]
mutable声明的成员变量,即使在const成员函数里也可以被修改

热点排行