スレッド: [cppll:12899] <tips> 自己解説型ディレクティブアウト
スレッド
- 12899: よく「複数行のコードを外したいときはコメントアウトじゃなくてディ レクティブ(#if 0)を使え Wraith the Trickster
- └12903: 探さなならん。 kosaki
- ├12904: とか書いておくとか。 シャノン shannon
- │└12905: と書いています。 ? を採用したのは、プリプロセッサで README の中だけを取り出すやり方が あ T.P.S.Nakagawa
- │ └12908: それ、思い出したらkwsk! それとはちょっと違うけど、先述の DELETE_ME の部分をソースファイル Wraith the Trickster
- └12909: それは一理ますね。あと、ちょっとゴメンナサイ、私少し嘘ついた アルヨ。"実際には定義しな Wraith the Trickster
[cppll:12899] <tips> 自己解説型ディレクティブアウト
- Subject:
- [cppll:12899] <tips> 自己解説型ディレクティブアウト
- From:
- Wraith the Trickster <wraith@...>
- Date:
- Sun, 22 Apr 2007 21:24:28 +0900
- X-Mailer:
- Microsoft Office Outlook 12.0
- Message-Id:
- <009a01c784d9$2e2736c0$8a75a440$@net>
道化師です。
よく「複数行のコードを外したいときはコメントアウトじゃなくてディ
レクティブ(#if 0)を使え」とか言われますが、#if 0じゃなんの為の
にそうしてあるのか分かりにくいんで最近は #if defined(HOGEHOGE)
〜 #endif の形で HOGEHOGE の部分に意味がわかるような(実際には
定義しない)マクロ名を入れるようにしてます。
例えば、そのコードがなくても問題なく動作することが確認できたら
消去する予定のコードは #if defined(DELETE_ME) 〜 #endif で囲った
り、どこぞのサンプルコードをメモ的にソースに残す場合には #if
defined(JUST_A_MEMO) 〜 #endif で囲ったり、いつでもコンパイル・
テストが可能状態を維持する為に編集中のコードは #if
defined(CODING_NOW) 〜 #endif で囲ったりなどといった具合です。
□■□■ Wraith the Trickster □■□■
■□■□ 〜I'll go with heaven's advantage and fool's wisdom.〜 ■□■□
[cppll ML] http://www.trickpalace.net/cppll/
[cppll BBS] http://jbbs.livedoor.com/computer/5651/cppll.html
よく「複数行のコードを外したいときはコメントアウトじゃなくてディ
レクティブ(#if 0)を使え」とか言われますが、#if 0じゃなんの為の
にそうしてあるのか分かりにくいんで最近は #if defined(HOGEHOGE)
〜 #endif の形で HOGEHOGE の部分に意味がわかるような(実際には
定義しない)マクロ名を入れるようにしてます。
例えば、そのコードがなくても問題なく動作することが確認できたら
消去する予定のコードは #if defined(DELETE_ME) 〜 #endif で囲った
り、どこぞのサンプルコードをメモ的にソースに残す場合には #if
defined(JUST_A_MEMO) 〜 #endif で囲ったり、いつでもコンパイル・
テストが可能状態を維持する為に編集中のコードは #if
defined(CODING_NOW) 〜 #endif で囲ったりなどといった具合です。
□■□■ Wraith the Trickster □■□■
■□■□ 〜I'll go with heaven's advantage and fool's wisdom.〜 ■□■□
[cppll ML] http://www.trickpalace.net/cppll/
[cppll BBS] http://jbbs.livedoor.com/computer/5651/cppll.html
[cppll:12903] Re: <tips> 自己解説型ディレクティブアウト
kosakiです。
> よく「複数行のコードを外したいときはコメントアウトじゃなくてディ
> レクティブ(#if 0)を使え」とか言われますが、#if 0じゃなんの為の
> にそうしてあるのか分かりにくいんで最近は #if defined(HOGEHOGE)
> 〜 #endif の形で HOGEHOGE の部分に意味がわかるような(実際には
> 定義しない)マクロ名を入れるようにしてます。
#if 0/* for HOGE HAGE */
でじゅうぶんでない?
#if defined(HOGEHOGE) はHOGEHOGEが定義されてないことを
探さなならん。
--
kosaki <m-kosaki@...>
> よく「複数行のコードを外したいときはコメントアウトじゃなくてディ
> レクティブ(#if 0)を使え」とか言われますが、#if 0じゃなんの為の
> にそうしてあるのか分かりにくいんで最近は #if defined(HOGEHOGE)
> 〜 #endif の形で HOGEHOGE の部分に意味がわかるような(実際には
> 定義しない)マクロ名を入れるようにしてます。
#if 0/* for HOGE HAGE */
でじゅうぶんでない?
#if defined(HOGEHOGE) はHOGEHOGEが定義されてないことを
探さなならん。
--
kosaki <m-kosaki@...>
[cppll:12904] Re: <tips> 自己解説型ディレクティブアウト
シャノンです。
> #if defined(HOGEHOGE) はHOGEHOGEが定義されてないことを
> 探さなならん。
コメントアウト目的なら、その直前に
// #define HOGEHOGE
とか書いておくとか。
俺は defined を使わずに、
#if HOGEHOGE
の方が好みです。
=-=-=-=-=-=-=-=-=-=-=
シャノン
shannon@...
=-=-=-=-=-=-=-=-=-=-=
> #if defined(HOGEHOGE) はHOGEHOGEが定義されてないことを
> 探さなならん。
コメントアウト目的なら、その直前に
// #define HOGEHOGE
とか書いておくとか。
俺は defined を使わずに、
#if HOGEHOGE
の方が好みです。
=-=-=-=-=-=-=-=-=-=-=
シャノン
shannon@...
=-=-=-=-=-=-=-=-=-=-=
[cppll:12905] Re: <tips> 自己解説型ディレクティブアウト
- Subject:
- [cppll:12905] Re: <tips> 自己解説型ディレクティブアウト
- From:
- T.P.S.Nakagawa <yaemon@...>
- Date:
- Tue, 24 Apr 2007 12:49:05 +0900
- Message-Id:
- <462D7E31.6040402‐at‐kikansha.jp>
- In-Reply-To:
- 12904
- References:
- 12899 12903 12904
パイプ喫いの中川です。
11年前(C言語だった) から
#ifdef README
#endif /* README */
と書いています。
(2007/04/24 9:38), shannon さんは書きました:
>> #if defined(HOGEHOGE) はHOGEHOGEが定義されてないことを
>> 探さなならん。
>
> コメントアウト目的なら、その直前に
> // #define HOGEHOGE
> とか書いておくとか。
#undef HOGEHOGE /* It's only comment */
?
あ、でもそれはそれで問題があるか
> 俺は defined を使わずに、
> #if HOGEHOGE
> の方が好みです。
#ifdef README
を採用したのは、プリプロセッサで README の中だけを取り出すやり方が
あったからのような気がします。
...もう具体的なコマンドは忘れたか、気のせいかもしれませんが。
--
T.Nakagawa ( mailto:yaemon@... )
courier-imapd のおかげで職場から
http://www.kikansha.jp/~yaemon/
mixi: http://mixi.jp/show_friend.pl?id=23211
11年前(C言語だった) から
#ifdef README
#endif /* README */
と書いています。
(2007/04/24 9:38), shannon さんは書きました:
>> #if defined(HOGEHOGE) はHOGEHOGEが定義されてないことを
>> 探さなならん。
>
> コメントアウト目的なら、その直前に
> // #define HOGEHOGE
> とか書いておくとか。
#undef HOGEHOGE /* It's only comment */
?
あ、でもそれはそれで問題があるか
> 俺は defined を使わずに、
> #if HOGEHOGE
> の方が好みです。
#ifdef README
を採用したのは、プリプロセッサで README の中だけを取り出すやり方が
あったからのような気がします。
...もう具体的なコマンドは忘れたか、気のせいかもしれませんが。
--
T.Nakagawa ( mailto:yaemon@... )
courier-imapd のおかげで職場から
http://www.kikansha.jp/~yaemon/
mixi: http://mixi.jp/show_friend.pl?id=23211
[cppll:12908] Re: <tips> 自己解説型ディレクティブアウト
道化師です。
【[cppll:12905] Re: <tips> 自己解説型ディレクティブアウト】
>#ifdef README
>を採用したのは、プリプロセッサで README の中だけを取り出すやり方が
>あったからのような気がします。
>
>
>...もう具体的なコマンドは忘れたか、気のせいかもしれませんが。
それ、思い出したらkwsk!
それとはちょっと違うけど、先述の DELETE_ME の部分をソースファイル
から削除したり、オレオレ #pragma なんかを作成・利用する為に cpp
系の機能を持つモジュールとそれを利用したツール群の作成を昨今考え
てるんだけど、すでにその代わりになるようなモノがあるんなら自作す
んのは馬鹿らしいし。
で、よく知らなかったんだけど、cpp コマンドって定義されている
マクロの一覧を作成する機能なんかもあるんですね。てか、ちゃんと
独立した cpp コマンドを持つ処理系ってなにげに少数派?
# パッと見たところ、bcc と gcc だけ。
□■□■ Wraith the Trickster □■□■
■□■□ 〜I'll go with heaven's advantage and fool's wisdom.〜 ■□■□
[cppll ML] http://www.trickpalace.net/cppll/
[cppll BBS] http://jbbs.livedoor.com/computer/5651/cppll.html
【[cppll:12905] Re: <tips> 自己解説型ディレクティブアウト】
>#ifdef README
>を採用したのは、プリプロセッサで README の中だけを取り出すやり方が
>あったからのような気がします。
>
>
>...もう具体的なコマンドは忘れたか、気のせいかもしれませんが。
それ、思い出したらkwsk!
それとはちょっと違うけど、先述の DELETE_ME の部分をソースファイル
から削除したり、オレオレ #pragma なんかを作成・利用する為に cpp
系の機能を持つモジュールとそれを利用したツール群の作成を昨今考え
てるんだけど、すでにその代わりになるようなモノがあるんなら自作す
んのは馬鹿らしいし。
で、よく知らなかったんだけど、cpp コマンドって定義されている
マクロの一覧を作成する機能なんかもあるんですね。てか、ちゃんと
独立した cpp コマンドを持つ処理系ってなにげに少数派?
# パッと見たところ、bcc と gcc だけ。
□■□■ Wraith the Trickster □■□■
■□■□ 〜I'll go with heaven's advantage and fool's wisdom.〜 ■□■□
[cppll ML] http://www.trickpalace.net/cppll/
[cppll BBS] http://jbbs.livedoor.com/computer/5651/cppll.html
[cppll:12909] Re: <tips> 自己解説型ディレクティブアウト
- Subject:
- [cppll:12909] Re: <tips> 自己解説型ディレクティブアウト
- From:
- Wraith the Trickster <wraith@...>
- Date:
- Tue, 24 Apr 2007 22:14:19 +0900
- X-Mailer:
- Microsoft Office Outlook 12.0
- Message-Id:
- <011901c78672$79427260$6bc75720$@net>
- In-Reply-To:
- 12903
- References:
- 12899 12903
道化師です。
【[cppll:12903] Re: <tips> 自己解説型ディレクティブアウト】
>> よく「複数行のコードを外したいときはコメントアウトじゃなくてディ
>> レクティブ(#if 0)を使え」とか言われますが、#if 0じゃなんの為の
>> にそうしてあるのか分かりにくいんで最近は #if defined(HOGEHOGE)
>> 〜 #endif の形で HOGEHOGE の部分に意味がわかるような(実際には
>> 定義しない)マクロ名を入れるようにしてます。
>
>#if 0/* for HOGE HAGE */
>
>でじゅうぶんでない?
>#if defined(HOGEHOGE) はHOGEHOGEが定義されてないことを
>探さなならん。
それは一理ますね。あと、ちょっとゴメンナサイ、私少し嘘ついた
アルヨ。"実際には定義しない"って部分がちょっと嘘。
例えば、DELETE_ME とかはいざテストしてみたらうまくいかなかった
場合に DELETE_ME をコンパイルオプションで指定して動作を比較し
たりするですよ。あと、CODING_NOW もちょっと試しに走らせたりする
時に。加えて、これは完璧に私個人の都合ですけど、別メールでも
書いたように cpp 系のツールを作ってごにょごにょするようなこ
とも考えてるんでマクロである必要があるですヨ。
□■□■ Wraith the Trickster □■□■
■□■□ 〜I'll go with heaven's advantage and fool's wisdom.〜 ■□■□
[cppll ML] http://www.trickpalace.net/cppll/
[cppll BBS] http://jbbs.livedoor.com/computer/5651/cppll.html
【[cppll:12903] Re: <tips> 自己解説型ディレクティブアウト】
>> よく「複数行のコードを外したいときはコメントアウトじゃなくてディ
>> レクティブ(#if 0)を使え」とか言われますが、#if 0じゃなんの為の
>> にそうしてあるのか分かりにくいんで最近は #if defined(HOGEHOGE)
>> 〜 #endif の形で HOGEHOGE の部分に意味がわかるような(実際には
>> 定義しない)マクロ名を入れるようにしてます。
>
>#if 0/* for HOGE HAGE */
>
>でじゅうぶんでない?
>#if defined(HOGEHOGE) はHOGEHOGEが定義されてないことを
>探さなならん。
それは一理ますね。あと、ちょっとゴメンナサイ、私少し嘘ついた
アルヨ。"実際には定義しない"って部分がちょっと嘘。
例えば、DELETE_ME とかはいざテストしてみたらうまくいかなかった
場合に DELETE_ME をコンパイルオプションで指定して動作を比較し
たりするですよ。あと、CODING_NOW もちょっと試しに走らせたりする
時に。加えて、これは完璧に私個人の都合ですけど、別メールでも
書いたように cpp 系のツールを作ってごにょごにょするようなこ
とも考えてるんでマクロである必要があるですヨ。
□■□■ Wraith the Trickster □■□■
■□■□ 〜I'll go with heaven's advantage and fool's wisdom.〜 ■□■□
[cppll ML] http://www.trickpalace.net/cppll/
[cppll BBS] http://jbbs.livedoor.com/computer/5651/cppll.html