我有一个模板,它接受一个 char 参数,例如:
A<'T'>
我将我的 T 存储在一个变量中,例如:
const char ch = str[0];
//str 是我程序中的一个字符串
constexpr char ch = str[0];
//这对我也不起作用
我正在努力实现这一目标:
A<ch>();
我正在使用 gcc 4.7 并尝试使用 constexpr,但我无法完成这项工作
有什么方法可以让它发挥作用吗? 感谢任何帮助
最佳答案
这只有在一切都是常量表达式时才有效:
constexpr char str[] = "Hello World";
constexpr char ch = str[0];
A<ch> x;
关于c++ - C++模板参数中的常量表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10337563/