5

TypeVisual Studio 2017 (15.1) 中的 IntelliSense为以下代码中的单词添加了下划线:

#include <type_traits>

template<class... Vars>
struct Test : std::true_type { };

template<class... TT>
using Type /*!*/ = std::conditional_t<std::conjunction_v<Test<TT>...>, int, double>;

//template<class... TT>
//using Type = std::conditional_t<std::conjunction<Test<TT>...>::value, int, double>; // no error

int main()
{
    return 0;
}

错误内容为(有一些明显的遗漏):别名模板类型“std::conditional_t<...>”与别名模板“Type”的重新声明中之前的“std::conditional_t<...>”类型不兼容”

代码编译。它是 IntelliSense 中的错误吗?

4

0 回答 0