template_class_with_static_member.cpp 304 B

123456789101112131415161718192021
  1. // https://cirosantilli.com/linux-kernel-module-cheat#cpp
  2. #include <cassert>
  3. template <class T>
  4. struct MyClass {
  5. static int i;
  6. MyClass() {
  7. i++;
  8. }
  9. };
  10. template <class T>
  11. int MyClass<T>::i = 0;
  12. int main() {
  13. MyClass<int>();
  14. MyClass<int>();
  15. assert(MyClass<int>::i == 2);
  16. }