AUTOSAR_SWS_CompilerAbstraction_学习笔记2
Grey
全部学习汇总: GitHub - GreyZhang/hack_autosar: learning autosar documents, aha, very hard!
AUTOSAR_SWS_CompilerAbstraction_学习笔记2
- 基本可以得出一个结论,谁做集成谁提供memmap以及编译器和平台的抽象定义文件比较合适。
- AUTOMATIC以空的方式来提供,用于局部变量的定义。
- TYPEDEF,定义为空且没有存储空间的绑定。
- AUTOSAR给出了一个空指针的定义。
- 内联以及局部内联的差异在于一个static。
- 直接做一个字面上的理解就很容易获知设计意图,主要是分两部分。
- 第一,用于定义一个函数。
- 第二,返回值为指向const的指针。
- 至于是什么类型的const,是我们使用的时候传入的参数决定的。
- 有了上一条的解读,这一条很容易:定义函数,返回指向变量的指针。
- 针对编译器的特性不同分析出来的结论是需要编译器厂商修改编译器?!
- 估计这种分析结论很难实施!
- 指针类型1:指针可以修改,指向的目标不能够修改。
- 指针类型2:指针不可以改,指向的目标是可以修改的。
- 指针类型3:指针以及指向的目标都是不可以修改的。
- 函数指针类型1:指针数值可以改的函数指针。
- 函数指针类型2:指针数值不可以修改的函数指针。
- 这是对比较常用的const以及变量的修饰的定义。
这样,关于编译器抽象的部分就看完了。从这份文档还是学习了解了很多东西的,对于后面接触AUTOSAR工程也是一个很好的准备。之前我也直接看过AUTOSAR的软件工程代码,对于这种复杂的定义抽象很反感。现在了解了这些设计的理念以及意图之后,似乎现在觉得接受起来也是很容易的!