我正在研究一种API,我认为它的历史可以追溯到80年代,API的原始架构师不再在我们公司工作了.API,我们称之为ABC API是在abc.h包含以下定义的公共头文件中定义的:
#define ABC_PTR_DECL *
Run Code Online (Sandbox Code Playgroud)
然后在头文件中的许多地方:
typedef unsigned char uint8, ABC_PTR_DECL uint8_ptr;
Run Code Online (Sandbox Code Playgroud)
问题是,为什么有人#defineABC_PTR_DECL并且不直接使用星号?是否有理由将其定义为可以在一个地方轻松更改?
我想在较新的API修订版中删除此定义,但我一直想知道为什么我们这样做.