C2017: Use of incomplete template class

[ERROR]

Description

A template was instantiated from an incomplete class.

Example
  template<class S> struct A;

  
  A<int, int> a;  // error

  
Tips

The template to be instantiated must be of a defined class.