std::is_array true , T[] T[N]. std::array .
std::is_array true_type std::array ; , . std, , . ( , std ).
is_array:
namespace notstd {
template<class T>
struct is_array:std::is_array<T>{};
template<class T, std::size_t N>
struct is_array<std::array<T,N>>:std::true_type{};
template<class T>
struct is_array<T const>:is_array<T>{};
template<class T>
struct is_array<T volatile>:is_array<T>{};
template<class T>
struct is_array<T volatile const>:is_array<T>{};
}
notstd::is_array<T> C ++ std::array.