何时std :: common_type与单个参数一起使用?

时间:2018-01-11 12:38:22

标签: c++ duration chrono

我注意到any(c(var4,var5)=="value1")中实现的df$new_col <- apply(df[,c("var4","var5")] == "value1",1,any) 一元+和 - 运算符的返回类型为std::chrono::duration。为什么它不像其他算术运算符那样只是typename common_type<duration>::type

1 个答案:

答案 0 :(得分:5)

这是C ++ 17的变化。文档p0548r1调整operator+的{​​{1}}和operator-的返回类型以包含:

duration

显然constexpr common_type_t<duration> operator+() const; constexpr common_type_t<duration> operator-() const; 相当于common_type_t。基本原理基本上与二进制common_type<duration>::typeoperator+一致。