c++ マクロメモ

プリプロセッサの働きとその使い方

参考URL

ylb.jp

#define #undef

#define __MAX 100 //_MAXが100と置き換わる
#define  __SHANE_MESSAGE_TEST_H__ //シンボルだけ定義するものもある
#undef  __MAX 100 //文字列置き換えの取り消し

定数を作ったりするときに使います

参考URL

https://www.grapecity.com/developer/support/powernews/column/clang/014/page02.htm

インクルードガード

#ifndef __SIN_TEST_H__
#define __SIN_TEST_H__

なんかのコード

#endif

別のやり方の例

#if defined(__MAX)
  #define __MIN 10
#elif defined(__MIN)
  #define __MAX 100
#else
  #define __MAX 100
  #define __MIN 10
#endif

2重インクルードを防止するために使います

参考URL http://www.02.246.ne.jp/~torutk/cxx/file/includeguard.html

#line

よくわからん

マクロが展開された後のコードを見る

・マクロを展開したいプログラムファイル(*.cpp)を右クリック → プロパティ 構成プロパティの C/C++プリプロセッサ を選択 ファイルの前処理を「はい」に変更して適用。 ・設定をしたファイルを右クリック → コンパイル(ctr+F7)とすると 指定したファイル1つのみがコンパイルされ 拡張子が「i」となっているファイルが作られます。

参考URL

qiita.com