前言:
现时姐妹们对“静态成员变量怎么赋值出来”大概比较关怀,朋友们都想要了解一些“静态成员变量怎么赋值出来”的相关资讯。那么小编在网络上网罗了一些关于“静态成员变量怎么赋值出来””的相关文章,希望各位老铁们能喜欢,我们一起来学习一下吧!#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
using namespace std;
class Base
{
public:
static void func()
{
cout << "父类中静态func调用" << endl;
}
static void func(int a)
{
cout << "父类中静态func(int a)调用" << endl;
}
static int m_A; // 静态成员变量 // 类内声明
};
int Base::m_A = 10; // 类外赋值
class Son :public Base
{
public:
static void func()
{
cout << "子类中静态func调用" << endl;
}
static int m_A; // 静态成员变量 // 类内声明
};
int Son::m_A = 100; // 类外赋值
------------------------------------------------------------------
void test01()
{
Son s1;
// 通过对象访问静态成员变量
cout << s1.m_A << endl; // 结果: 100
cout << s1.Base::m_A << endl; // 结果: 10
//通过类名访问静态成员变量
cout << Son::m_A << endl;
cout << Son::Base::m_A << endl;
}
------------------------------------------------------------------
void test02()
{
Son s2;
// 通过对象访问静态成员函数
s2.func(); // 结果:子类中静态func调用
s2.Base::func(); // 结果:父类中静态func调用
s2.Base::func(1); // 结果:父类中静态func(int a)调用
// 通过类名访问静态成员函数
Son::func();
Son::Base::func();
Son::Base::func(1);
}
// 注意 Son::Base::func(); 第一个::是通过类名访问 第二个::是作用域 注意区别
标签: #静态成员变量怎么赋值出来 #静态成员变量怎么赋值出来的