最近忙しくて更新がなかなかできません。
さて、今回は#ifdefを使って、サンプルプログラムを作るのが楽しくなる方法を書いていきます。
サンプルプログラムは基本的な構文をテストしたり、実装のテストをするのに誰しも作ると思います。
そんなサンプルプログラムはいつでも見れる状態にしておくのがいいと思いませんか?
例えば、これってどんなんだっけ?とか、誰かに聞かれたりした時など瞬時に出せるのが望ましいですね。
そんな事をやる時、私がやっている方法は、#ifdefを使ってフラグを管理する事です。
サンプル
==================================================================
SampleFlags.h
//サンプルプログラムのフラグヘッダ
#define SAMPLE_IFDEF //ifdefのサンプル
//#define SAMPLE_FOR_LOOP //forループのサンプル
//#define SAMPLE_FOR_EACH //for eachのサンプル
===================================================================
==================================================================
Main.h
//mainのヘッダ
#include "SampleFlags.h"
==================================================================
==================================================================
Main.cpp
//main処理
#include "Main.h"
//以下コード
#ifdef SAMPLE_IFDEF
#include
int main()
{
//ここにサンプル処理
return 0;
}
#endif
#ifdef SAMPLE_FOR_LOOP
int main()
{
//ここにサンプル処理
return 0;
}
#endif
#ifdef SAMPLE_FOR_EACH
int main()
{
//ここにサンプル処理
return0;
}
#endif
==================================================================
さて、こんな感じですけど、やってる事は判りますか?
SampleFlags.hにサンプルに対してのdefine定義をしています。
これがサンプルの一覧の表示になり、コメントアウトを外したものを確認する事が出来ます。
コードをみれば判ると思いますが、一つのdefine定義に完成したコードの記述を行います。
だから、#includeやint main()等もしっかりとかきましょう。#include等は毎回かくのは面倒だ!
という意見もありそうですが、この処理に必要なincludeはこれだと言う事がどちらにしても必要になります。
最小限のinclude以外はいらない訳ですから、そこは面倒がらずにしっかりとやりましょう。
ちなみに、何故Main.hをわざわざ作ったかと言うと、ファイルを跨いで処理を行う場面のテストに対応する為です。
この時もしっかりと、#ifdefでくくって、どの処理の内容なのか明示的にする必要がありますね。
これが続くと自分のサンプル集が出来ていき、なぜかサンプルを作るのが楽しくなってきます♪
こうしてこんなページを作ってしまうわけですよ……。。
あくまでも自分なりの方法なので、もっといい方法が有ったり、自分には合わないって人は控えて下さい。
では終わり。
さて、仕事の続きでもやるかー