ATOMIC_JOIN(prefix, detail_platform)
est une macro qui affichera une chaîne de caractères comme suit:Comment puis-sortie macro guillemets doubles
base/atomique/gcc_gnu_x64
dans un autre ATOMIC_DETAIL_HEADER
macro, dont la sortie devrait être:
"base/atomique/gcc_gnu_x64.hpp" // avis: guillemets doubles inclus dans la sortie
J'essaie d'écrire le ATOMIC_DETAIL_HEADER
, tels que:
#define ATOMIC_DETAIL_HEADER(prefix) "ATOMIC_JOIN(prefix, ATOMIC_DETAIL_PLATFORM).hpp"
#define ATOMIC_DETAIL_HEADER(prefix) \"ATOMIC_JOIN(prefix, ATOMIC_DETAIL_PLATFORM).hpp\"
#define ATOMIC_DETAIL_HEADER(prefix) "##ATOMIC_JOIN(prefix, ATOMIC_DETAIL_PLATFORM).hpp##"
... a échoué!
mais si j'espère que la sortie est:
<base/atomic/gcc_gnu_x64.hpp>
La macro de suivi définissent peut faire bonne chose:
#define ATOMIC_DETAIL_HEADER(prefix) <ATOMIC_JOIN(prefix, ATOMIC_DETAIL_PLATFORM).hpp>