通常的做法是我努力避免直接使用内置类型,而是包含一个 standardtypes.h,其中包含如下项目:
// \Common\standardtypes.h
typedef double Float64_T;
typedef int SInt32_T;
几乎所有组件和源文件都依赖于此 header ,但有些人认为需要抽象类型的大小(实际上不需要)。
这是一个好的做法吗(尤其是在大型组件化系统中)?有更好的选择吗?还是应该直接使用内置类型?
最佳答案
您可以在头文件中使用现代 C 和 C++ 实现中可用的标准化版本:stdint.h
它有类似的类型:uint8_t、int32_t 等。
一般来说,这是保护代码免受平台依赖性影响的好方法。即使您迄今为止还没有遇到过需要它的情况,它肯定会使代码更易于解释,因为不需要像猜测“int”或“long”那样猜测存储大小,它们的大小会随着平台。
关于c++ - C++ 嵌入式应用程序是否应该为内置 C++ 类型使用带有 typedef 的通用 header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3516401/