Pergunta

Eu tenho uma macro para uma string de personagem da seguinte maneira:

#define APPNAME "MyApp"

Agora eu quero construir uma corda ampla usando esta macro fazendo algo como:

const wchar_t *AppProgID = APPNAME L".Document";

No entanto, isso gera um erro de compilação "Strings incompatíveis".

Existe uma maneira de converter a macro AppName em uma ampla corda literal?

Foi útil?

Solução

Você tentou

#define APPNAME "MyApp"

#define WIDEN2(x) L ## x
#define WIDEN(x) WIDEN2(x)

const wchar_t *AppProgID = WIDEN(APPNAME) L".Document";
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top