zoukankan      html  css  js  c++  java
  • 类的特殊数据成员和成员函数——static const friend

    关于const对象和成员函数,掌握2点:

    1.const对象只能调用const成员函数,不能调用非const成员函数。(这句话针对的是成员函数,当然也可调用公有数据成员)。

    2.const成员函数不允许修改数据成员。

    为什么需要const,仅从类和对象的角度看,如有一个日期类,我们希望定义一个人的生日,该生日不能被修改,怎么办?

    const Date birthday(1987,11,15);

    即我们需要定义一个常对象,不允许修改该对象的数据成员,const满足了我们的需求。

    如何保证常对象的数据成员不被修改呢,我们从修改数据成员的2种方式入手。

    一是通过对象名调用公有数据成员修改,因为birthday已经是const对象了,语法上不允许birthday调用公有数据成员修改。

    二是通过成员函数,即如果birthday可以调用一个修改数据成员的成员函数,那么无疑会修改birthday的数据成员,怎么办,方法是我们不允许birthday调用一般成员函数,二是调用const成员函数。

    即const对象只能调用const成员函数,不能调用其他非const成员函数。

    const成员函数不可以修改数据成员(但可访问,这是毋庸置疑的),也不可以调用非const成员函数(非const成员函数可能修改数据成员)。

  • 相关阅读:
    c#常用正则表达式
    亲密接触Discuz!NT之架构篇:优良架构 方便网站整合与二次开发
    即时对话,在线对话,QQ,MSN,UC,popo
    C#事务处理
    正则表达式中的特殊字符
    9:38 2009729
    16:43 200981 缓解疲劳的七大唱片 免费短信
    复选框 全选
    9:05 2009721
    9:34 2009728
  • 原文地址:https://www.cnblogs.com/helloweworld/p/3117988.html
Copyright © 2011-2022 走看看