static constexpr char MyCharArray[] = "yolo";
template<const char* CharArray>
struct MyStruct {
//Do stuff
};
int main()
{
MyStruct<MyCharArray> myStruct;
}
这很好用,但我想在第一行“清理”我的char数组。这很难看。有没有使用char数组的替代方法,这样我的代码仍然可以编译和工作。谢谢
答案 0 :(得分:0)
我能为你找到最好的:
删除关键字static
- 不需要
使用typedef缩短MyCharArray
的定义。
-
using chars = const char[];
constexpr chars MyCharArray = "yolo";
template<const char* CharArray>
struct MyStruct {
//Do stuff
};
int main()
{
MyStruct<MyCharArray> myStruct;
}