English

# C言語 / #if皆殺し機能

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

    #if 0
        hogehoge();
    #endif

といった書き方をしますが、量が多いと可読性が落ちます。 可読性が落ちるとバグの検出が遅れます。 遅れると納期に間に合わなくなるのでお客様からの信頼が落ちます。 本機能はようするに顧客満足のために"#if"とかを削除します。 これは単純なリファクタリングの一例です。
このリファクタリングを行うためには、"#if"deleteダイアログを使用します。 このダイアログは、[EE2E]->["#if"delete]を選択すると表示されます。

> (*)尚、この機能を使用するには、 あらかじめ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