📄 c16_12.cpp
字号:
#include <iostream >
using namespace std;
class A
{
private:
static int s_var1;
static int GetVar1() { return s_var1;}
public:
static int s_var2;
static int GetVar2() { return s_var2;}
};
int A::s_var1 = 11;
int A::s_var2 = 10;
class B : public A
{
int m_varB;
public:
//存取访问函数
void SetVar(int i=0)
{
m_varB = i;
}
int GetVar( ) { return m_varB; }
};
int main()
{
A ob_a;
B ob_b;
cout << "ob_b.GetVar2() = " << ob_b.GetVar2() <<endl;
ob_a.s_var2 = 77; //通过基类A的对象ob_a改变静态成员s_var2的值
cout << "ob_b.GetVar2() = " << ob_b.GetVar2() <<endl;
ob_b.s_var2 = 11; //通过派生类B的对象ob_b改变静态成员s_var2的值
cout << "ob_a.GetVar2() = " << ob_a.GetVar2() <<endl;
//下面的两条语句不能通过编译,考虑是什么原因???
//cout << "ob_b.GetVar1() = " << ob_b.GetVar1() <<endl;
//cout << "ob_b.s_Var1 = " << ob_b::s_var1 <<endl;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -