#include <type_traits>
#include <iostream>
template<class U>
typename std::enable_if<
std::is_array<U>::value,
void
>::type check(U const&) {
std::cout << "is array type." << std::endl;
}
template<class U>
typename std::enable_if<
!std::is_array<U>::value,
void
>::type check(U const&) {
std::cout << "is not array type." << std::endl;
}
int main() {
int i;
int a[5];
check(i);
check(a);
}
I2luY2x1ZGUgPHR5cGVfdHJhaXRzPgojaW5jbHVkZSA8aW9zdHJlYW0+Cgp0ZW1wbGF0ZTxjbGFzcyBVPgp0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjwKICBzdGQ6OmlzX2FycmF5PFU+Ojp2YWx1ZSwKICB2b2lkCj46OnR5cGUgY2hlY2soVSBjb25zdCYpIHsKICBzdGQ6OmNvdXQgPDwgImlzIGFycmF5IHR5cGUuIiA8PCBzdGQ6OmVuZGw7Cn0KCnRlbXBsYXRlPGNsYXNzIFU+CnR5cGVuYW1lIHN0ZDo6ZW5hYmxlX2lmPAogICFzdGQ6OmlzX2FycmF5PFU+Ojp2YWx1ZSwKICB2b2lkCj46OnR5cGUgY2hlY2soVSBjb25zdCYpIHsKICBzdGQ6OmNvdXQgPDwgImlzIG5vdCBhcnJheSB0eXBlLiIgPDwgc3RkOjplbmRsOwp9CgppbnQgbWFpbigpIHsKICBpbnQgaTsKICBpbnQgYVs1XTsKCiAgY2hlY2soaSk7CiAgY2hlY2soYSk7Cn0=