# a ##
Z cppreference.com
< cpp | preprocessor
Operátory preprocesoru # a ## jsou používány s příkazem preprocesoru #define
Použití:
- # způsobí že první argument za # bude navrácený jako string v uvozovkách.
- ## řetězí to co je před ## s tím co následuje.
Například, příkaz:
#define to_string( s ) # s
kompilátor pouze přehodí řetězec z parametru a vrátí jako výsledek:
cout << to_string( Hello World!)<< endl;
a vyhodnotí se takto:
cout <<"Hello World!"<< endl;
Příklad použití příkazu ## :
#define concatenate( a, b ) a ## b ... int xy =10; ...
Tento kód převede první parametr k druhému a vrátí jako výsledek
cout << concatenate( x, y )<< endl;
do tvaru
cout << xy << endl;
který mimochodem zobrazí '10' na standardní výstup.
Související: #define