C++ override
时间: 2023-09-12 09:09:14 浏览: 111
C++ override关键字使用详解
C++中的override是一个保留字,用于表示当前函数重写了基类的虚函数。它有两个主要的目的:一是在函数比较多的情况下可以提示读者某个函数重写了基类虚函数,以便清晰地表明这个虚函数是从基类继承而来,而不是派生类自己定义的;二是强制编译器检查某个函数是否重写了基类虚函数,如果没有则会报错。在使用时,只需要在类的成员函数参数列表后面添加override关键字即可。例如:
```cpp
class Base {
virtual void f();
};
class Derived : public Base {
void f() override; // 表示派生类重写基类虚函数f
void F() override; // 错误:函数F没有重写基类任何虚函数
};
```
需要注意的是,override只是C++的保留字,而不是关键字。这意味着只有在正确的使用位置,override才会起到“关键字”的作用,而在其他地方可以作为标志符使用(例如int override是合法的)。此外,C++标准还引入了另一个姊妹保留字final。目前,主流的编译器的新版本都支持override这个保留字。
#### 引用[.reference_title]
- *1* [C++ 中override的作用](https://blog.csdn.net/qq_33485434/article/details/78418012)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [C++ 中提供的override 关键字](https://blog.csdn.net/liyuanbhu/article/details/43816371)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文