gpt4 book ai didi

c++ - 在 header 中使用只影响此文件的指令

转载 作者:太空宇宙 更新时间:2023-11-04 11:56:55 25 4
gpt4 key购买 nike

在命名空间 long::name::space::name 中有一个声明类的头文件

而且我还想在这个类的全局命名空间中专门化一些模板,即

template<typename T>
class GlobalClass<NSClass<T>> {

}
...

每次都写命名空间名称很烦人,所以我想使用某种 using 指令,但将此名称推送到全局命名空间不是个好主意吗?

有没有什么办法可以缩短输入时间,但又不向全局命名空间添加任何内容?

我知道一个解决方案,但它很丑陋:

#define NS long::name::space::name
//use NS here
#undef NS

最佳答案

您可以为 namespace 提供短别名(请记住 long 是 C++ 中的关键字):

namespace SN = longy::name::space::name;

// ...

SN::my_class obj; // Resolves into longy::name::space::name::my_class

关于c++ - 在 header 中使用只影响此文件的指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15868878/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com