我正在尝试使用现有第三方 enum
类型的表单:
enum EnumType
{
ONE,
TWO,
THREE
}
在我的项目中有两个用法:
enum
并将其放入现有的命名空间(例如“namespace myproject
”)。 API.h
中我想导入此enum
只是为了声明返回类型为enum
的方法(在cpp文件中我只是从myproject::EnumType
进行强制转换到EnumType
)我想这样做的原因是我不想将enum
的定义放在API标头的命名空间中。
我对第一点有疑问,我该怎么办?
答案 0 :(得分:1)
using EnumType
是否不足以供您使用;一个using-declaration ......
namespace my_project {
using ::EnumType;
//...
}
如果您仍然希望“隐藏”EnumType
在公共API中不可见,那么您可以使用相同的值创建自己的enum
,并在代码中的两者之间进行转换