📄 17-2.txt
字号:
/* 范例:17-2 */
#include <iostream.h>
class A
{
public:
void show_addr();
int a;
static int g;
protected:
int b;
private:
int c;
};
int A::g; // 必须声明在外
void A::show_addr()
{
cout << "&a=" << &a << "\n";
cout << "&b=" << &b << "\n";
cout << "&c=" << &c << "\n";
cout << "&g=" << &g << "\n";
}
class B:public A // 试改protected,private方式继承
{
public:
int d;
void get_super();
};
void B::get_super()
{
show_addr();
cout << "&d=" << &d << "\n";
}
void main()
{
B obj1,obj2;
cout << sizeof(A) << " " << sizeof(B) << "\n";
cout << "&obj1=" << &obj1 << "\n";
obj1.get_super();
cout << "\n";
cout << "&obj2=" << &obj2 << "\n";
obj2.get_super();
cout << &A::g << " " << &B::g << "\n"; // A::g,B::g地址
getchar();
}
程序执行结果:
12 16
&obj1=0065FDF4
&a=0065FDF4
&b=0065FDF8
&c=0065FDFC
&g=00422034
&d=0065FE00
&obj2=0065FDE4
&a=0065FDE4
&b=0065FDE8
&c=0065FDEC
&g=00422034
&d=0065FDF0
00422034 00422034
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -