2015-02-05 214 views

回答

1
  • 首先,转发声明template <typename T> struct Foo
  • 然后,使用正向声明的Foo声明bar

template <typename T> 
struct Foo; 

extern const Foo<int> bar[]; 

template <typename T> 
struct Foo 
{ 
    Foo(int i) : Foo(bar[i]) {} 
    T x; 
};