0

我想知道#ifdef、#ifndef 和#endif 的使用,在哪种情况下,必须使用这些条件,它的用途是什么?#ifdef 和 #ifndef 有什么区别?

例如:

#define MY_Global

#ifdef MY_Global
  // write some code (Inside the method)
#endif 

或者,

  #ifdef MY_Global   
  -(void) customMethod
  {
       // Do something
  }
  #endif 

哪一个是正确的,它应该只在方法内部编写还是在方法外部工作?我以前没用过这个。所以请解释一下?

谢谢!

4

1 回答 1

2

AFAIK,#ifdef =“如果定义”和#ifndef =“如果未定义”。这些条件很有用,例如,如果您希望仅为模拟器编译某些代码,那么您可以编写如下内容:

    #if TARGET_IPHONE_SIMULATOR
    #import "AccelerometerSimulation.h"
    #endif

这意味着,当您为模拟器编译时,将导入 AccelerometerSimulation.h。如果你在设备上编译,它会被完全忽略。希望有帮助。

于 2011-01-21T13:33:05.497 回答