#include <type_traits>
template <typename T>
using EnableIfInt =
std::enable_if_t<std::is_arithmetic<T>::value>;
template <typename T, typename Enable = void>
class Class {
static_assert(sizeof(T) == 0, "Nie wolno");
};
template <typename T>
class Class<T, EnableIfInt<T>> {
public:
Class() {};
void Method();
};
template <typename T>
void Class<T, EnableIfInt<T>>::Method() {
}
int main() {
Class<int> class1;
// Class<int [2]> class2;
class1.Method();
}
I2luY2x1ZGUgPHR5cGVfdHJhaXRzPgoKdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CnVzaW5nIEVuYWJsZUlmSW50ID0KICBzdGQ6OmVuYWJsZV9pZl90PHN0ZDo6aXNfYXJpdGhtZXRpYzxUPjo6dmFsdWU+OwoKdGVtcGxhdGUgPHR5cGVuYW1lIFQsIHR5cGVuYW1lIEVuYWJsZSA9IHZvaWQ+CmNsYXNzIENsYXNzIHsKICBzdGF0aWNfYXNzZXJ0KHNpemVvZihUKSA9PSAwLCAiTmllIHdvbG5vIik7Cn07Cgp0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KY2xhc3MgQ2xhc3M8VCwgRW5hYmxlSWZJbnQ8VD4+IHsKcHVibGljOgogICAgQ2xhc3MoKSB7fTsKICAgIHZvaWQgTWV0aG9kKCk7Cn07CiAKdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CnZvaWQgQ2xhc3M8VCwgRW5hYmxlSWZJbnQ8VD4+OjpNZXRob2QoKSB7CiAKfQogCmludCBtYWluKCkgewogICAgQ2xhc3M8aW50PiBjbGFzczE7CiAgICAvLyBDbGFzczxpbnQgWzJdPiBjbGFzczI7CiAgICBjbGFzczEuTWV0aG9kKCk7Cn0=