iphone - 在 Objective-C 中将 TypeDef 作为参数

标签 iphone objective-c ios cocoa-touch

我遇到了一种情况,我在常量文件中声明多个相关的 typedef 枚举:

typedef enum 
{
    AnimalTypeBear,
    AnimalTypeBunny,
    MemeTypeCount
} 
AnimalType;

typedef enum 
{
    FishTypeSalmon,
    FishTypeTrout,
    FishTypeCount
} 
FishType;

现在我想为名为 type 的初始化程序定义一个参数,它可以将这两个 typedef 枚举 作为参数。我目前将类型定义为 NSUInteger ,无论我将哪种类型发送到初始化程序中,我都会得到 0(即 FishTypeTrout 应该是 1,但它是 0)。 type 应该使用什么类型的对象才能同时用于 在此处输入代码typeDef 枚举?

最佳答案

我不是 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);

时,它会打印 1

这有帮助吗?

关于iphone - 在 Objective-C 中将 TypeDef 作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13078078/

相关文章:

iOS - 如何从未设置邮件客户端的设备通过电子邮件接收错误报告?

ios - 当我返回应用程序时相机被卡住(Obj-C)

iphone - 从网络获取图像到 UIImageView 不起作用

objective-c - 使用 QuickLook 预览 PDF 会导致分配无限增加

ios - 按下取消按钮时覆盖 textFieldShouldEndEditing

ios - OpenGL ES 渲染到非 POT 纹理

iphone - 显示 UITableView 的节标题,即使它是空的

iphone - 搜索城市列表

iphone - 如何在 iPhone 中以编程方式检查设备的方向?

objective-c - 使用 NSString 调用现有对象并调用方法 - Objective-C