两个类型比较的问题 为什么前一个是equal 后一个却不是equal的。
林初茵 2008-12-14 07:25:49 两个类型比较的问题 为什么前一个是equal 后一个却不是equal的。
#include <iostream>
using namespace std;
class A{
int m_nA;
};
class B{
int m_nB;
};
class C : public A, public B{
int m_nC;
};
int main() {
C* pC = new C;
B* pB = dynamic_cast<B*>(pC);
A* pA = dynamic_cast<A*>(pC);
//cout << pC << endl;
//cout << pB << endl;
if(pC==pB)
{cout << "equal" << endl;}
//cout << pC << endl;
//cout << pB << endl;
//cout << int(pC) << endl;
//cout << int(pB) << endl;
if(int(pC)==int(pB))
{cout << "equal" << endl;}
return 0;
}