Какова цель оператора ## в C ++ и как он называется?

Я просматривал проект DXUTCore, который поставляется с DirectX March 2009 SDK, и заметил, что вместо создания обычных методов доступа они использовали макросы для создания универсальных средств доступа, аналогично следующему:

#define GET_ACCESSOR( x, y )  inline x Get##y()  { DXUTLock l; return m_state.m_##y;};
...

GET_ACCESSOR( WCHAR*, WindowTitle );

Кажется, что оператор ## просто вставляет текст из второго аргумента в макрос, чтобы создать функцию, работающую с переменной, использующей этот текст. Это что-то, что является стандартным в C ++ (то есть не специфично для Microsoft)? Считается ли его использование хорошей практикой? И как называется этот оператор?

Ответы на вопрос(7)

Ваш ответ на вопрос