我有一种情况,我在我的常量文件中声明多个相关的typedef enums
:
typedef enum
{
AnimalTypeBear,
AnimalTypeBunny,
MemeTypeCount
}
AnimalType;
typedef enum
{
FishTypeSalmon,
FishTypeTrout,
FishTypeCount
}
FishType;
现在,我想为名为type
的初始化程序定义一个参数,该参数可以同时接受这两个typedef enums
作为参数。我目前正在将类型定义为NSUInteger
,无论我将哪种类型发送到初始化程序中,我都会保持0(即FishTypeTrout应为1但它为0)。哪个类型的对象应该type
适用于enter code here
typeDef枚举?
答案 0 :(得分:2)
我不是100%肯定你在问什么,但我尝试了以下代码:
typedef enum AnimalType : NSUInteger
{
AnimalTypeBear,
AnimalTypeBunny,
MemeTypeCount
} AnimalType;
typedef enum FishType : NSUInteger
{
FishTypeSalmon,
FishTypeTrout,
FishTypeCount
} FishType;
void TestFunction(NSUInteger at)
{
printf("at = %d\n",at);
}
,当我拨打TestFunction(FishTypeTrout);
这有帮助吗?