如何在Macro中获取当前命名空间的字符串

时间:2014-02-14 09:59:32

标签: c++ namespaces macros c-preprocessor

我需要在宏中添加名称空间前缀。即。

#define MYMACRO(x) ....##x

namespace A {
  namespace B {
    MYMACRO(C);
  }
}

和MYMACRO必须返回 - A :: B :: C?

1 个答案:

答案 0 :(得分:3)

无法工作。命名空间由编译器识别,编译器仅在预处理器之后运行。