English

C言語 / #if皆殺し機能

  C言語では、よくコメントアウトを実行するときに、

#if 0
    hogehoge();
#endif
  といった書き方をしますが、量が多いと可読性が落ちます。 可読性が落ちるとバグの検出が遅れます。 遅れると納期に間に合わなくなるのでお客様からの信頼が落ちます。 本機能はようするに顧客満足のために"#if"とかを削除します。 これは単純なリファクタリングの一例です。

  このリファクタリングを行うためには、"#if"deleteダイアログを使用します。 このダイアログは、[EE2E]->["#if"delete]を選択すると表示されます。
124x380(3732bytes)
(*)尚、この機能を使用するには、 あらかじめCDT及びEE2ECDTをインストールしておく必要があります。

使い方

  "#if"deleteダイアログのコンボボックスで、 削除したい定義をクリックしてください。

#if DEFINE
    hogehoge();
#endif
  つぎに、"#if delete"か"#ifndef delete"かを選択してください。

"#if delete"サンプル

  "#if delete"を選択すると、次のようになります。

#ifdef AAA
    hoge();
#endif
---------------------
(none)
  "#if delete"を選択すると、次のようになります。

#ifndef AAA
    hoge();
#endif
--------------------
    hoge();
  "#if delete"を選択すると、次のようになります。

#ifdef AAA
    hoge();
#else
    hero();
#endif
--------------------
    hero();

"#ifndef delete"サンプル

  "#ifndef delete"を選択すると、次のようになります。

#ifdef AAA
    hoge();
#endif
---------------------
    hoge();
  "#ifndef delete"を選択すると、次のようになります。

#ifndef AAA
    hoge();
#endif
--------------------
(none)
  "#ifndef delete"を選択すると、次のようになります。

#ifdef AAA
    hoge();
#else
    hero();
#endif
--------------------
    hoge();

ando@park.ruru.ne.jp