static、const、extern和define的區別

1、靜態變量 static
     什麼是靜態變量:從面向對象的角度觸發,當需要一個數據對象爲整類而非某個對象服務,同時有力求不破壞類的封裝性,既要求此成員隱藏在類的內部,有要求對外不可見的時候,就可以使用static。
 靜態變量的優點:
    1、節省內存。靜態變量只存儲一處,但供所有對象使用。
    2、它的值是可以更新的。
    3、可提高時間效率。只要某個對象對靜態變量更新一次,所有的對象都能訪問更新後的值。

2、全局變量extern
什麼是全局變量:也稱之爲外部變量,是在方法外部定義的變量。它不屬於哪個方法,而是屬於整個源程序。
作用域是整個源程序。
如果全局便利和局部變量重名,則在局部變量作用域內,全局變量被屏蔽,不起作用。編程時候儘量不使用全
局變量。

3、局部變量
什麼是局部變量:是在方法內作定義說明的。其作用域僅限於方法內。

4、實例變量
在類中定義的實例變量,是可以在各個方法內使用的。

5、const  變量值不可變

const和#define差不多,const可以指定類型,C中只認#define






原文來自:http://www.devdiv.com/ios_static_extern_-blog-319669-51270.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章