01./* (程序头部注释开始)
02.* 程序的版权和版本声明部分
03.* Copyright (c) 2011, 烟台大学计算机学院学生
04.* All rights reserved.
05.* 文件名称:
06.* 作 者: 臧鹏
07.* 完成日期: 2012 年 3 月 26 日
08.* 版 本 号:
09.
10.* 对任务及求解方法的描述部分
11.* 输入描述:
12.* 问题描述:
13.* 程序输出:
14.* 程序头部的注释结束
15.*/
修改方法一:
//c.h
#include <iostream>
using namespace std;
class C
{
private:
int x;
public:
C(int x)
{this->x = x;}
int getx()const //如果一个对象被声明为常对象,则不能调用该对象的非const型的成员函数。
{
return x;
}
};
//main.cpp
#include"c.h"
void main()
{
const C c(5);
cout<<c.getx();
system("pause");
}
修改方法二:
//c.h
#include <iostream>
using namespace std;
class C
{
private:
int x;
public:
C(int x)
{this->x = x;}
int getx()
{
return x;
}
};
//main.cpp
#include"c.h"
void main()
{
C c(5); //将常对象改为非常对象就可调用非const型的成员函数
cout<<c.getx();
system("pause");
}
我个人认为主张使用方法一,使用常对象的目的是防止某些函数会改变常对象中数据成员的值,如果不用常对象就失去保护数据成员的意义
还没有评论,来说两句吧...