詳談c++11 final與override說明符
如下所示:
//final,override出現(xiàn)在形參列表以及尾置返回類型之后
#include <iostream>
using namespace std;
struct B{
virtual void f1(int) const;
virtual void f2(int);
void f3(int) final;//出錯(cuò),final不能修飾非虛函數(shù)
};
struct D:B{
void f1(int) const override ;//去掉const將出錯(cuò),必須和基類中的函數(shù)原型一致,否則不能用override來表示覆蓋
void f2(int) final;//final說明繼承D的派生類中不能覆蓋該函數(shù)
void f3();
};
struct E:B{
void f2(int);//ok,其直接基類B中該函數(shù)沒有final說明符
};
struct F:D{
void f2(int);//出錯(cuò),無法覆蓋該函數(shù),原因是其直接基類D中有final說明符
};
final表示該虛函數(shù)不能被重寫,override表示該函數(shù)重寫了某個(gè)虛函數(shù)
以上這篇詳談c++11 final與override說明符就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Qt編寫地圖實(shí)現(xiàn)海量點(diǎn)位標(biāo)注
海量點(diǎn)位標(biāo)注的出現(xiàn),是為了解決普通設(shè)備點(diǎn)超過幾百個(gè)性能極速降低的問題。本文將介紹如何通過Qt實(shí)現(xiàn)海量點(diǎn)位標(biāo)注功能,感興趣的可以了解一下2022-01-01
C++中的繼承問題(繼承基本概念、菱形虛擬繼承的對(duì)象模型)
這篇文章主要介紹了C++中的繼承問題(繼承基本概念、菱形虛擬繼承的對(duì)象模型),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
C語言lidar_align雷達(dá)里程計(jì)校準(zhǔn)功能詳解
這篇文章主要為大家介紹了C語言lidar_align雷達(dá)里程計(jì)校準(zhǔn)功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
C語言斷言函數(shù)assert()的學(xué)習(xí)筆記
在C語言庫(kù)函數(shù)中提供了一個(gè)輔助調(diào)試程序的小型庫(kù),它是由assert()宏組成,本文就詳細(xì)的介紹了一下如何使用,感興趣的可以了解一下2021-11-11
利用QDir實(shí)現(xiàn)刪除選定文件目錄下的空文件夾
這篇文章主要為大家詳細(xì)介紹了如何利用QDir實(shí)現(xiàn)刪除選定文件目錄下的空文件夾功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動(dòng)手嘗試一下2022-08-08
C++?Qt實(shí)現(xiàn)動(dòng)態(tài)增加垂直滾動(dòng)條
本博文源于筆者正在工作的一個(gè)小內(nèi)容,內(nèi)容涉及到為qt動(dòng)態(tài)增加垂直滾動(dòng)條,文章分為三個(gè)部分,問題起源,問題解決方案,問題解決成功效果,思路清晰,文章干貨滿滿,復(fù)制源碼即可使用,需要的朋友可以參考下2023-08-08

