modes_[pos].variance = (sigmanew < 4) ? (4) : sigmanew > 5 * variance_ : sigmanew;
我在模板化类的模板化函数中有一行。此行中的尖括号被解释为数据类型定义,并且正在抛出错误。我该如何解决这个问题?
错误是:
/(foldername)/(part_filename)_templated_impl.tpp:312:89:错误:找到 ':'在嵌套名称说明符中,预期为'::'
/(foldername)/(part_filename)_templated_impl.tpp:312:79:错误: 'variance_'不是类或命名空间
答案 0 :(得分:2)
我认为<
或>
没有任何问题。你的三元运算符里面有两个冒号。那可能不对。你正在尝试的是:
modes_[pos].variance = (sigmanew < 4) ? (4)
: (sigmanew > 5) ? variance_
: sigmanew;
但你错误输入了?
之一。为什么不在多行上执行此操作,而不是试图以这种方式一起填充它?