请教KEIL MDK 中 __weak 字使用?

2020-01-10 19:45发布

STM32CubeMX 生成的代码中 许多函数被定义为  __weak void HAL_xxxxx(X_HandleTypeDef *S)
如 __weak void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
在IRQHandler中断中被调用,请问应该如何正确使用此函数?
耐心等待诸位指点
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
chenhaimeng123
1楼-- · 2020-01-11 09:37
error_dan 发表于 2016-3-19 15:44
都说了是哑函数定义了,你可以直接定义一个同名的函数而不在链接的时候报错,因为有这个关键字修饰的函数会 ...

哦,谢谢,既然是演示代码,为啥这样做呢?
error_dan
2楼-- · 2020-01-11 11:39
chenhaimeng123 发表于 2016-3-19 16:07
哦,谢谢,既然是演示代码,为啥这样做呢?

演示代码都编译不过,用户会怎么想?顺便,这样的关键字就是给做框架的人用的,不管用户用不用,反正框架在那里,能编译,不报错...
vaneno
3楼-- · 2020-01-11 13:00
error_dan 威武
BS_good200xy
4楼-- · 2020-01-11 13:03
error_dan 谢谢你!你的回答也让我更清楚了__weak的本质和作用.
No.5
5楼-- · 2020-01-11 13:38
 精彩回答 2  元偷偷看……
mypear
6楼-- · 2020-01-11 14:04
hal库很多这种用法

一周热门 更多>