关于RTT系统中典型的串口设备注册的方式作为一个例子,弄懂这一种设备的注册方式我觉得很有必要。这里有几个问题请教大家
1、在RTT系统中我们都知道这里用到了面对对象的编程思想,这里使用了一个方式叫子对象继承父类派生,说的很片面,不太理解。下面图1是串口设备框架层文件serial.c,注册过程中肯定是从驱动层一级一级的往顶层注册,最终也肯定会产生一个对象类的结构体,并且这个结构体会与一个名称产生联系,这里比较好奇为什么能够由rt_serial_device这样的结构体找到rt_device这样的结构体,下面我们也看到就是通过一个取(rt_serial_device类型中parent)的地址就能够得到其父类的地址,决定很神奇,这到底是一种什么思想和编程技巧?
2、其实图2中也是使用了差不多的方式去查找其父类,这种思想请大神帮我解答下,谢谢了。
3、另外可以看图4中,这里不是注册设备,而是使用设备,就和上面的注册相反,这里是使用结构体的强制转换,就能够从一个结构体的父类派生处其子类,这里也是一种转换思想,具体怎么实现的,请帮忙解答下。
图1
图2
图3
图4
你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,目前超出我们的服务范围,暂时无法为您解答。
首次提问人员可免费体验一次有问必答服务。目前首次提问的问题服务范围为:编程语言、Java开发、python、数据库、前端开发 领域专业技术问题,为您提供问题的解决思路和指导。不提供源码代写、项目文档代写、论文代写、安装包资源发送或安装、软件使用指导等服务。
我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。