CUDA 标头中"#define something p##n"的含义
Meaning of "#define something p##n" in a CUDA header
我在.cuh文件中遇到了以下行:
#define mp_ptr(n) P##n
P##n
部分是什么意思?
它的意思是串联。这是一个C预处理器指令。
因此,mp_ptr(1)
变成P1
,mp_ptr("foobar")
变成P"foobar"
,等等。
相关文章:
- 为什么标准首选圆括号初始化为"make_<something>"?
- 什么是使用something::something:something mean(c++)
- 是否允许在模板类的静态成员上__attribute__((节(".something")))?
- "stringstream>>something"的返回值是多少?
- 编译器"error: passing ‘const something’ as ‘this’ argument discards qualifiers"
- C++ 如果'something'不为空且不"0.0.0.0"
- 在 c++ 中混淆了 new something() 和 new something[]
- std::算法友好的方式迭代'std::vector<std::vector<something>>
- 使用 ::namespace::something 比 namespace::something 有什么好处
- ISO C++禁止声明无类型的"something"
- 通过"using"表达式缩短 std::remove_const(decltype(something))
- CUDA 标头中"#define something p##n"的含义
- Tantamount of while(cin>>something){some task ;} in java?
- 如何将"something.a"库文件添加到我的C++ Android Gradle 项目中?
- "const name{something}"是什么意思?
- 适当的破坏者/RAII/Something
- 编译器错误,指出 Something 类型的引用初始化无效,并且来自 Something 类型的表达式*
- 是否可以替换(自动 i=0;i<n;i++) ... with for(auto i:<something>) 而不使用向量?