const 與 define
cosnt是c、c++中常用的關鍵字。在C中,const主要用于定義常量、修飾函數參數、修飾函數返回值。在C++中const還可以修飾函數的定義體,定義成員函數為常態函數。
- const定義一個常量,定義時初始化,之后不能更新。
- 使用了const方法可以是編譯器對處理內容有更多的了解,便于內型檢查。
- 同宏定義一樣方便地進行參數修改和調整。
- 節省空間,避免不必要的內存分配。
- 為函數重載提供參考;如下:
class A { void f1(void);//一個成員函數 void f1(void) const;//聲明為上一個函數的重載 }
編程中引入常量可以增強程序的可讀性,可以是程序員的維護和調試更加方便,使書寫根據方便。
const和define都可以定義常量,兩者區別如下:
- const定義的常量有數據類型,而define沒有。
- 很多的集成開發環境只支持對const定義的常量的調試,而不支持define定義的常量。
- const定義的常量是要分配內存空間的,而define定義的常量卻不分配。
有時define比const有優勢,因為define不僅定義常量,還可以定義帶參數的宏,做到一定程度的泛型。
posted on 2011-01-31 16:15 Geek.tan 閱讀(555) 評論(0) 編輯 收藏 引用 所屬分類: C++