const在函数声明中的应用

[09-12 18:31:36]   来源:http://www.88dzw.com  EDA/PLD   阅读:8868

文章摘要:[思考3]: 这样定义赋值操作符重载函数可以吗?const A& perator=(const A& a);2. 类成员函数中const的使用一般放在函数体后,形如:void fun() const;任何不会修改数据成员的函数都因该声明为const类型。如果在编写const成员函数时,不慎修改了数据成员,或者调用了其他非const成员函数,编译器将报错,这大大提高了程序的健壮性。如:class Stack{public:void Push(int elem);int Pop(void);int GetCount(void) const; //const 成员函数private:int m_nu

const在函数声明中的应用,标签:eda技术,eda技术实用教程,http://www.88dzw.com

  [思考3]: 这样定义赋值操作符重载函数可以吗?

  const A& perator=(const A& a);

  2. 类成员函数中const的使用

  一般放在函数体后,形如:void fun() const;

  任何不会修改数据成员的函数都因该声明为const类型。如果在编写const成员函数时,不慎修改了数据成员,或者调用了其他非const成员函数,编译器将报错,这大大提高了程序的健壮性。如:

  class Stack

  {

  public:

  void Push(int elem);

  int Pop(void);

  int GetCount(void) const; //const 成员函数

  private:

  int m_num;

  int m_data[100];

  };

  int Stack::GetCount(void) const

  {

  ++m_num; //编译错误,企图修改数据成员m_num

  Pop(); //编译错误,企图调用非const函数

  Return m_num;

  }

  3. 使用const的一些建议

  (1)要大胆的使用const,这将给你带来无尽的益处,但前提是你必须搞清楚原委;

  (2)要避免最一般的赋值操作错误,如将const变量赋值,具体可见思*;

  (3)在参数中使用const应该使用引用或指针,而不是一般的对象实例,原因同上;

  (4) const在成员函数中的三种用法(参数、返回值、函数)要很好的使用;

  (5) 不要轻易的将函数的返回值类型定为const;

  (6)除了重载操作符外一般不要将返回值类型定为对某个对象的const引用;

  “本文由www.88dzw.com提供”


上一页  [1] [2] 


Tag:EDA/PLDeda技术,eda技术实用教程EDA/PLD

《const在函数声明中的应用》相关文章

分类导航
最新更新
热门排行