c16_12.cpp
来自「这是编程之道C-C++中的源代码,很简练,可以用于相关教学和重新熟悉C-C++时」· C++ 代码 · 共 44 行
CPP
44 行
#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 + =
减小字号Ctrl + -
显示快捷键?