我知道添加static
成员函数很好,但是enum
定义呢?没有新的数据成员,只是它的定义。
一点背景:
我需要添加一个static
成员函数(在类中),它将IP
通过字符串表示来识别(函数)地址的版本。我想到的第一件事是声明一个enum
for IPv4
,IPv6
并为我的函数Unknown
制作这个enum
返回码。
但我不想破坏二进制向后兼容性。
还有一个非常糟糕的问题(对于 SO) - 这里有任何来源或问题,我可以阅读更多相关信息吗?我的意思是 - 什么破坏了二进制兼容性,什么 - 没有。或者它取决于很多东西(如架构、操作系统、编译器..)?
编辑:关于@PeteKirkham 的评论:好吧,至少 - 有没有办法测试/检查更改的ABI,或者最好发布关于此的新问题?
EDIT2:我刚刚发现了一个SO 问题:静态分析工具来检测 C++ 中的 ABI 中断 。我认为它在这里有某种关联,并回答了有关检查二进制兼容性的工具的部分。这就是为什么我在这里把它联系起来。