|
发表于 2019-4-9 11:26:09
6689 浏览 2 回复
找不到hal.console->available()的函数体
最近在阅读APM的源码,产生了如题所示的疑惑,还请论坛中的大佬能指点一下
- 语句位置:INS_generic.cpp
- 已知信息:
- console类型:AP_HAL::UARTDriver*
- 类的派生关系:Stream→BetterStream→UARTDriver
- 选中available后,context窗口显示了AP:HAL::Stream:public AP::Print类中的纯虚函数:available
- 按我的理解,函数体应该在Stream的子类中重写,不过依照继承关系,在BetterStream以及UARTDriver中都没看到对available的重定义。而且也没有发现UARTDriver有任何的派生类
所以直到最后也没发现avialable是怎么实现的
PS:我觉得可能是UARTDriver有派生类但是我没找到,因为看到该类中有很多纯虚函数,而按我理解纯虚函数需要在派生类中去实现。奈何我使用了全局搜索、Relation窗口试图找到UARTDriver派生了什么类,却完全没有找到
|
扫一扫浏览分享
|
|
|
|
|
|
|
楼主|
发表于 2019-4-10 11:22:39
|
|
|
|
|
|
|