关于 $ Super $ $ 和 $ Sub $ $ 的用法
這個(gè)符號(hào)想必不少人也是在RT-Thread的KEIL MDK工程源碼中接觸到的,我也一樣。
文章中我給$這個(gè)符號(hào)間加了很多空格為了防止跟文字的語法沖突了,需留意一下,實(shí)際使用沒有空格
官方note:
Keil幫助手冊(cè):
隨便找了塊STM32板子在MDK工程模板上測(cè)試這個(gè)符號(hào)的用法:
運(yùn)行效果:
通俗一點(diǎn)講,實(shí)際上就相當(dāng)于在main函數(shù)之前先運(yùn)行了$ Sub $ $ main這個(gè)函數(shù),并且在$ Sub $ $ main這個(gè)函數(shù)里最后一句$ Super $ $ main();又用真正的main函數(shù)整體替換這個(gè)$ Super $ $main(), $ Sub $ $ main最后成為了真的main函數(shù)(類似宏定義)。這種方法就是用于表面上看簡化了main函數(shù)的程序復(fù)雜度,但本質(zhì)上沒有啥區(qū)別。
以上使用注意點(diǎn):
執(zhí)行結(jié)果;
接上:
6. $ Super$$Fun();之后還可以寫代碼且能夠執(zhí)行,因?yàn)檫@里相當(dāng)于整體把Fun函數(shù)替換進(jìn)來,執(zhí)行完Fun()后接著往下執(zhí)行,相當(dāng)于 $ Sub $ $Fun()變成了真正的Fun()。
7. extern int main(void);這句好像沒有什么必要。
8. 可以用于給某個(gè)函數(shù)打補(bǔ)丁而不破壞原來的程序結(jié)構(gòu)。
9. 暫時(shí)就這么多了
總結(jié)
以上是生活随笔為你收集整理的关于 $ Super $ $ 和 $ Sub $ $ 的用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Markdown语法补充
- 下一篇: 树莓派vi编辑文件时退格键和方向键无法正