类模板中的static关键字
作者:互联网
- 从类模板实例化的每个模板类有自己的类模板数据成员,该模板类的所有对象共享一个static数据成员
- 和非模板类的static数据成员一样,模板类的static数据成员也应该在文件范围定义和初始化
- 每个模板类有自己的类模板的static数据成员副本
#pragma warning(disable : 4996)
#include <iostream>
using namespace std;
template <typename T>
class A
{
public:
static T m_a;
};
template <typename T>
T A<T>::m_a = 0;
int main()
{
A<int> a1, a2, a3;
a1.m_a = 10;
a2.m_a++;
a3.m_a++;
cout << A<int>::m_a << endl;
A<char> a4, a5, a6;
a4.m_a = 'a';
a5.m_a++;
a6.m_a++;
cout << A<char>::m_a << endl;
system("pause");
return 0;
}
图示
标签:++,成员,关键字,static,template,类有,模板 来源: https://blog.csdn.net/sinat_34791632/article/details/102776455