我尝试用 Google 搜索它,但没有找到任何结果。有谁知道这是否可以做到?如果没有,是否有解决此问题的优雅工作?
更新:我认为 Frank Osterfeld 的回答是最明确的解决方案。感谢所有其他答案,我赞成你的答案。
最佳答案
正如其他人所说,您不能重新声明一个枚举(在哪种情况下,无论如何应该使用哪个枚举?)。
如果您只需要一些常量,并想为特殊情况扩展它们,您可以使用多个枚举声明,一个扩展另一个,然后使用 int 来保存值:
enum Error { NoError=0, AllIsBroken, WhatTheHellAreYouDoing, UserDefinedError };
enum NetworkError { HostNotFound=UserDefinedError+1, ConnectionTimeout, ... };
int error = HostNotFound;
if ( error == NoError )
...
if ( error == HostNotFound )
...
关于一旦创建了 C 枚举,就可以向它添加值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9743503/