Jmenné prostory
Varianty

# a ##

Z cppreference.com


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

close