#ifndef TEMPLATE_CLASS_TEST_H // comment 1 #define TEMPLATE_CLASS_TEST_H template class A { public: void f(); void g(); template void h(); template void k(); static int b; static int c; }; template void A::f() {} template template void A::h() {} template int A::b = 2; class B { public: void f(); }; #endif // TEMPLATE_CLASS_TEST_H