1. 程式人生 > >c++的override關鍵字作用

c++的override關鍵字作用

描述:override保留字表示當前函式重寫了基類的虛擬函式。

目的:1.在函式比較多的情況下可以提示讀者某個函式重寫了基類虛擬函式(表示這個虛擬函式是從基類繼承,不是派生類自己定義的);2.強制編譯器檢查某個函式是否重寫基類虛擬函式,如果沒有則報錯。

用法:在類的成員函式引數列表後面新增該關鍵字既可。

例子:
class Base {
virtual void f();
};

class Derived : public Base {
void f() override; // 表示派生類重寫基類虛擬函式f
void F() override;//錯誤:函式F沒有重寫基類任何虛擬函式
};

注意:override只是C++保留字,不是關鍵字,這意味著只有在正確的使用位置,oerride才啟“關鍵字”的作用,其他地方可以作為標誌符(如:int override;是合法的)。

相關:override還有一個姊妹保留字final。

VC++編譯器支援情況: VS2008,
VS2010
,VS2012,VS2013,+ 注: override為標準C++保留字,並非VS特有,目前主流的編譯器的新版本都支援該保留字。

相關推薦

c++的override關鍵字作用

描述:override保留字表示當前函式重寫了基類的虛擬函式。 目的:1.在函式比較多的情況下可以提示讀者某個函式重寫了基類虛擬函式(表示這個虛擬函式是從基類繼承,不是派生類自己定義的);2.強制編譯器檢查某個函式是否重寫基類虛擬函式,如果沒有則報錯。 用法:在類的成員

C++ static關鍵字作用

esp 接收 name names 分配 c++ spa 成員函數 它的 (1)函數體內static變量的作用範圍為該函數體,不同於auto變量,該變量的內存只被分配一次,因此其值在下次調用時仍維持上次的值; (2)在模塊內的static全局變量可以被模塊內所用函數訪問,

c++ override 關鍵字介紹

描述:override保留字表示當前函式重寫了基類的虛擬函式。 目的: 1.在函式比較多的情況下可以提示讀者某個函式重寫了基類虛擬函式(表示這個虛擬函式是從基類繼承,不是派生類自己定義的); 2.強制編譯器檢查某個函式是否重寫基類虛擬函式,如果沒有則報錯。 用法:在類的

C++ using關鍵字作用 (過載父類函式)

1.在當前檔案中引入名稱空間 這是我們最熟悉的用法,例如:using namespace std; 2.在子類中使用 using 宣告引入基類成員名稱(參見C++ primer) 在private或者protected繼承時,基類成員的訪問級別在派生類中更受限:

C++中static關鍵字作用總結

可見性 apple 局部變量 內存 父類靜態 初始化 ati 退出 變量存儲 1.先來介紹它的第一條也是最重要的一條:隱藏。(static函數,static變量均可) 當同時編譯多個文件時,所有未加static前綴的全局變量和函數都具有全局可見性。舉例來說明。同時編譯兩個源

C ------ static 關鍵字作用

不同 普通 範圍 oid 修飾 數據 error -- 關鍵字 首先要理解生存周期與作用域的區別: 生存周期: 變量從定義到銷毀的時間範圍。存放在全局數據區的變量的生存周期存在於整個程序運行期間,而存放在棧中的數據則隨著函數等的作用域結束導致出棧而銷毀,除了靜態變量之外的局

C++中關鍵字static的作用

對象 想要 關鍵字 局部作用域 blog 個數 初始化 ext lte 1、定義局部靜態變量,存放在全局數據區的靜態變量區。初始化的時候自動初始化為0; 其作用域為局部作用域,當定義它的函數或語句塊結束時,其作用域隨之結束。 2、static定義全局變量的時候,這個全局變量

C#: static關鍵字作用

轉:C#: static關鍵字的作用 tatic意思是靜態,可以修飾類、欄位、屬性、方法 標記為static的就不用建立例項物件呼叫了,可以通過類名直接點出來 static三種用法: 1.用於變數前,表示每次重新使用該變數所在方法、類或自定義類時,變數的值為程式這次執行最後一次為變數

C#:abstarct 和 virtual關鍵字的區別分析,new 與 override關鍵字區別分析

1.首先 absratct 和 virtual 都是與繼承概念有關係。 2.區別 ① virtual 關鍵字用於在父類中修飾方法,該方法在父類中可提供實現,並且子類中使用此方法有兩種方式。 方式1: 在父類中定義了virtual方法,在子類中沒有用ov

C++的關鍵字整合及作用說明

1. asm asm (指令字串):允許在 C++ 程式中嵌入彙編程式碼。 2. auto auto(自動,automatic)是儲存型別識別符號,表明變數"自動"具有本地範圍,塊範圍的變數宣告(如for迴圈體內的變數宣告)預設為auto儲存型別。 3. bool

C++中static關鍵字作用

@著作權歸作者所有:來自CSDN部落格作者大鬍子的艾娃的原創作品,如需轉載,請註明出處,否則將追究法律責任。 如有錯誤的地方歡迎指正,謝謝! 一、 static宣告全域性靜態變數和區域性靜態變數 1、static宣告全域性靜態變數 該全域性變數只能供本模組使用,

C++11新特性學習筆記—final和override關鍵字

一、final關鍵字                為什麼c++現在才提供final這個關鍵字?很奇怪。             和Java一樣,c++中的final關鍵字是用來修飾一個函式,防止這個

C++ 中提供的override 關鍵字

C++ 語言標準這些年進化的很快,許多新引入的特性我都沒有用過。說實話自己也比較懶,總是覺得自己對C++ 的掌握程度已經足夠應付日常的各種專案了,所以沒有學習新特性的動力。而且一直覺得新引入的特性多數都屬於那種“語法糖”,能夠發揮的作用不大,其實是可有可無的。 不過最近編寫

C++ typename關鍵字作用

引用講解typename作用部分: 2、型別解釋Typename Typename關鍵字告訴了編譯器把一個特殊的名字解釋成一個型別,在下列情況下必須對一個name使用typename關鍵字: 1. 一個唯一的name(可以作為型別理解),它巢狀在另一個型別中的。 2. 依賴於一個模板引數,就是說:模板引

C語言中關鍵字作用(const和static和extern)

儲存型別關鍵字(4個): auto: 宣告自動變數,現在一般不用(auto int a;和int a;一樣) register: 宣告暫存器變數 static: 宣告靜態變數。該變數宣告時系統所分配的

C/C++中static關鍵字作用總結(轉)

源地址 C/C++中static關鍵字作用總結 隱藏 先來介紹它的第一條也是最重要的一條:隱藏(static函式,static變數均可) 當同時編譯多個檔案時,所有未加static字首的全域性變數和函式都具有全域性可見性。舉例來說明。同時編譯兩個原始

Serializable在C#中的作用及其優點

p s mst access pen eat mat zab ref hal 原文發布時間為:2009-10-27 —— 來源於本人的百度文章 [由搬家工具導入]Serializalbe - Enable the object can be Serialized into

static在C/C++中的作用-(轉自華山大師兄)

運行時 str 如果 字符數 class 但我 靜態成員 var 使用 1.先來介紹它的第一條也是最重要的一條:隱藏。(static函數,static變量均可) 當同時編譯多個文件時,所有未加static前綴的全局變量和函數都具有全局可見性。舉例來說明。同時編譯兩個源文件

c# using的作用

定義 raw 不能 隱藏 解決方案 可能 調用 fin use using 關鍵字有兩個主要用途: (一).作為指令,用於為命名空間創建別名或導入其他命名空間中定義的類型。 (二).作為語句,用於定義一個範圍,在此範圍的末尾將釋放對象。 using指令

volatile關鍵字作用

獲取 語義 可見性 操作 指令重排序 寫入 strong 修飾 每次 (1)保證可見性:多線程主要圍繞可見性和原子性兩個特性而展開,使用volatile關鍵字修飾的變量,保證了其在多線程之間的可見性,即每次讀取到volatile變量,一定是最新的數據。 當一個共享變量被vo