【问题标题】:C ENUM Not Recognizing In Xcode iOS Dev ProjectC ENUM 在 Xcode iOS 开发项目中无法识别
【发布时间】:2012-04-11 22:40:02
【问题描述】:

是否有允许普通 C 枚举在 Xcode 中工作的构建设置?请不要告诉我使用 typedef 技术。我需要直接使用老式枚举。我有一个遗留项目可以很好地使用它们,但是当我将类导入新项目时,它会抛出错误,说我的枚举未定义。

我使用一个简单的 Global.h 将它们包含在所有抱怨类中。我的实现非常基础:

enum {
state1,
state2
};

线索?

【问题讨论】:

  • 你能举例说明你在哪里使用枚举,以及编译器错误吗?

标签: ios c xcode enums


【解决方案1】:

已经有一段时间了,我的 iPad 上没有 c 编译器来测试它,但是试试:

enum states {
state1,
state2
};

【讨论】:

  • 我实际上在项目名称 SLQTSOR 下的“Learning iOS Game Programming”一书中找到了一个示例项目,该项目在其 Global.h 中使用了这种遗留方法。没有枚举标签。没有 typedef 方法,它似乎可以完美地编译和运行。我一直认为它是一个编译器设置。
  • 如果某些 C 代码可以编译而某些不能编译,则 C99 设置总是可以使用的。
  • 我刚刚验证了您的代码确实可以在使用 gcc 的旧 FreeBSD 系统上编译。您还可以检查您的编译器是 gcc 而不是 llvm。
  • 是的,整个事情都很奇怪。我将项目中的所有内容都切换为 typedef 枚举,但问题仍然存在。真的感觉 Xcode 非常脆弱。一个项目工作了一段时间,直到您尝试导入新类,然后出现问题,并且没有回报。
  • 为了让事情变得更奇怪,我创建了一个新项目,在 Global.h 中连接了 typedef 枚举,但它仍然抛出编译错误。我觉得 Rod Serling 站在我身后,准备介绍今晚的剧集。
猜你喜欢
  • 2011-10-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多