1. 程式人生 > >c++基礎:const,變數的作用域和生存期,儲存型別

c++基礎:const,變數的作用域和生存期,儲存型別

一:const的使用: const常量型別表示“常值變數”,cosnt型變數代表的常值只在其作用域內有效; const與define相比:const會在編譯時進行型別檢查,而define只做文字替換;define後面不需要分號。 1.宣告變數:例如 const int size = 20; 2.限定引數:函式中不能修改該引數 3.限定返回值:特別時返回值為指標或引用時,不能用返回值來改變返回值所指或所引用的變數 4.限定成員函式的修改操作:宣告成員函式時,使該函式不能修改其類的成員變數        例如   void fun() const;

二:變數的作用域和生存期,儲存型別 1.作用域:區域性,全域性,檔案 2.記憶體分配方式:靜態分配(靜態儲存區),自動分配(棧),動態分配(堆) 3.變數儲存型別:auto,register,extern,static auto,register宣告內部變數:auto變數在棧上,register變數在暫存器中;內部變數隱含為auto; extern宣告外部變數,外部變數隱含為extern; static宣告內部變數或外部變數;static宣告的內部變數作用域時函式內部,但有全域性的生存期 extern和static宣告的變數都在靜態儲存區; 4.外部變數的兩種宣告方式:定義性宣告和引用性宣告 1.定義性宣告:分配記憶體,一般要初始化;只能放在函式外部;可省略extern; 2.引用性宣告:不分配記憶體,不能進行初始化(除非定義性宣告時沒初始化);不省略extern