【发布时间】:2015-09-21 03:35:16
【问题描述】:
我已经编写了一个示例程序。 如果我打印 pa 和 pb 的地址,两者都是不同的。 你能告诉我为什么会这样吗?
#include<iostream>
using namespace std;
class A {
int x;
};
class B {
int y;
};
class C: public A, public B {
int z;
};
int main()
{
C c;
A *pa;
B *pb;
pa = &c;
pb = &c;
cout<<pa<<endl;
cout<<pb<<endl;
}
【问题讨论】:
-
为什么地址不能不同?
pa和pb指向不同的对象! -
@JonathonReinhart:这与
int n = 1.5;存在相同的心理障碍,就像A*不能表达指向C的概念一样。
标签: c++