我想跳过一些范围直接访问静态变量而不写下我的所有范围。
nts::CLI::Mode::AMode::Out
其中Out是指向我希望通过编写
访问的静态变量的指针 nts::Out
有没有办法在我的命名空间nts使用prepocessor define或另一个指针?
可能只是一个架构错误,我应该将我的静态var放在nts命名空间中吗?
答案 0 :(得分:1)
最干净的方法是定义别名,例如,针对您的具体情况:
using Out = CLI::Mode::AMode::Out;
命名空间内的nts
。
当然,您可以在任何级别的命名空间或类中定义任何其他名称别名,例如using O = nts::CLI::Mode::AMode::Out;
,O
是新名称等。
包含整个命名空间通常是不受欢迎的,因为如果产生“命名空间污染”,但也有效:using nts::CLI::Mode::AMode;
。