プログラムの修正・実行を繰り返しているときに、ある2ヶ所のコードのコメントアウトを切り替えたくなる時がたまにあったりする。そんなときに役立つ小技。
↓のような感じで、コメントアウトの切り替えを行いたいコードを//*と/*/と//*/の3行ではさむ。
#include <iostream> using namespace std; int main() { //* cout << "code1" << endl; // 処理が実行される /*/ cout << "code2" << endl; // コメントアウト //*/ return 0; }
この状態でプログラムをコンパイル・実行すると、main関数でcout << "code1" << endl;が実行される。cout << "code2" << endl;はコメントアウトされているので実行されない。ここで、
//*
↑のスラッシュをひとつ消すと、cout << "code1" << endl;の部分がコメントアウトされ、代わりにcout << "code2" << endl;が実行されるようになる。
#include <iostream> using namespace std; int main() { /* ← スラッシュをひとつ削除 cout << "code1" << endl; // コメントアウト /*/ cout << "code2" << endl; // 処理が実行される //*/ return 0; }
何でうまく切り替わるのかはコードをよーく見てもらえれば分かるはず!ちなみに再びコメントアウトを切り替えるときは、先ほど消したスラッシュを追加して元に戻せばOK。
覚えておくと何かの役に立つかも!
ちなみにコメントアウトを切り替えたい2ヶ所のコードが離れていたりする場合、この方法は使えない。その時は#defineを使うといいかも。