前向类模板声明中的MSVC阻塞

时间:2019-06-05 22:19:47

标签: c++ templates visual-c++

MSVC无法编译

#include <iostream>

template<int N, int = N>
struct A;

template<int, int V>
struct A{static constexpr int VALUE = V;};

int main() {
  A<1> a;
  std::cout << a.VALUE;
}

(3): error C2065: 'N': unknown identifier (10): error C2975: 'V': invalid template argument 'A', constant expression expected(粗略翻译)。

clang 会对其进行静默编译。

那么,问题是:代码烂了还是MSVC痴呆了?

MSVC版本= VS 2019

0 个答案:

没有答案