Struct with template variables in C++
The problem is you can't template a typedef, also there is no need to typedef structs in C++.
The following will do what you need
template <typename T>
struct array {
size_t x;
T *ary;
};
template <typename T>
struct array {
size_t x;
T *ary;
};