虽然m_Name不能被修改,但m_sName是char *类型,const成员函数可以修改其所指向的字符。
  const成员函数可以被具有相同参数列表的非const成员函数重载,例如:
class Screen {
public:
char get(int x,int y);
char get(int x,int y) const;
};
  在这种情况下,类对象的常量性决定调用哪个函数。
const Screen cs;
Screen cc2;
char ch = cs.get(0, 0);  // 调用const成员函数
ch = cs2.get(0, 0);     // 调用非const成员函数<span style="font-family: Arial, Helvetica, sans-serif;"> </span>
  小结:
  1)const成员函数可以访问非const对象的非const数据成员、const数据成员,也可以访问const对象内的所有数据成员;
  2)非const成员函数可以访问非const对象的非const数据成员、const数据成员,但不可以访问const对象的任意数据成员;
  3)作为一种良好的编程风格,在声明一个成员函数时,若该成员函数并不对数据成员进行修改操作,应心可能将该成员函数声明为const 成员函数。
  4) 构造函数和析构函数是两个例外 即使构造函数和析构函数不是const 成员函数 const 类对象也可以调用它们 当构造函数执行结束 类对象已经被初始化时 类对象的常量性
  被建立起来了 析构函数一被调用 常量性消失 所以一个 const 类对象 从构造完成时刻到析构开始时刻这段时间内被认为是const