#、 ## プリプロセッサ演算子は#defineプリプロセッサ命令と一緒に使用されます。
#のサンプルコード:
#define to_string( s ) # s
上記のようなマクロが定義されると、以下のようなコードが書かれた場合に、
cout << to_string( Hello World! ) << endl;
以下のようなコードに置き換えられます。
cout << "Hello World!" << endl;
##演算子のサンプルコード:
#define concatenate( a, b ) a ## b ... int xy = 10; ...
上記のようなマクロが定義されたとすると、以下のようなコードがあると、
cout << concatenate( x, y ) << endl;
以下のようなコードに置換されます。
cout << xy << endl;
これを実行すると、もちろん、'10'という結果が標準出力に表示されます。
関連トピック: #define