C++所有關鍵字


摘要:本文給出了C++關鍵字的使用頻度列表並且對一些比較生僻的關鍵字做了簡要解釋

關鍵字:C++,關鍵字,保留字,explicit,volatile,mutable,register

 

1.explicit

             關鍵字用來修飾類的構造函數,表明該構造函數是顯式的。舉例說說明如下:

假設我們這樣定義了一個c++類

class MyClass
{
     public:
     MyClass( int num ){}
};

那么如果構造函數MyClass前沒有關鍵字,下面的語句

MyClass obj = 10; //ok,convert int to MyClass

在編譯時(VC++ 6.0測試)是可以通過的,進行了一個隱式轉換相當於執行了下面的語句

MyClass temp(10);

MyClass obj = temp;   

但是如果我們在構造函數前面加上explicit 關鍵字,即

class MyClass
{
     public:
     explicit MyClass( int num ){}
};

就表明構造函數不能進行上面所說的隱式轉換

編譯時(VC++ 6.0)會給出error C2440: 'initializing' : cannot convert from 'const int' to 'class MyClass'

的錯誤報告!

 

 

2.volatile

        用volatile關鍵字聲明變量,是用來告訴編譯器每次對此變量的引用都需要從內存地址中讀取,即取消

編譯器對此變量的優化編譯。

3.mutable

         C++類中的成員變量如果被mutable修飾,那么在const修飾的成員函數種也可以修改這個變量的值

4.register

         現在的編譯器都能夠的根據程序中的變量使用情況,將其中的使用頻率很高的變量自動設為register,

兒無需人為的規定了。如果自己指定了register變量,但是編譯器如果發現不合理,也會自動的取消程序員

指定的register變量


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM