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

私の知る限り、 #ifdef = 「定義されている場合」および #ifndef = 「定義されていない場合」。これらの条件は便利です。たとえば、特定のコードをシミュレーター用にのみコンパイルする場合は、次のように記述します。

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

つまり、シミュレーター用にコンパイルすると、AccelerometerSimulation.h がインポートされます。デバイスでコンパイルしている場合は、完全に無視されます。それが役立つことを願っています。

于 2011-01-21T13:33:05.497 に答える