《第六周任务一》常函数改错

来源:互联网 发布:jdk 7u1 windows i586 编辑:程序博客网 时间:2024/05/17 03:39
*程序头部注释开始
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生 
* All rights reserved.
* 文件名称:  常函数改错                            
* 作    者:     张斌                        
* 完成日期:  2012年    3   月   28     日

* 版 本 号:  6-1-1

class C
{
private:
 int x;
 public:
 C(int x){this->x = x;}
 int getX(){return x;}
};
void main()
{
 const C c(5);
 cout<<c.getX();
 system("pause");
}

第一种解决方案:
去掉const;
第二种解决方案:
把cout<<c.getX();改为
C  &d = c;
cout << d.getX();
我更倾向于第二种解决方案;因为第二种方案可以保护数据不被改变,起到保护作用。
处理此类问题的原则:尽量保护数据不被更改
运行结果: