关于RTTI的一个警告
warning C4541: 'dynamic_cast' used on polymorphic type 'class CA' with /GR-; unpredictable behavior may result
各位看看吧,,,,运行环境是vc6.0
源码::
class CA
{
public:
CA(void){}
virtual ~CA(void){}
};
class CB : public CA
{
public:
CB(void){}
virtual ~CB(void){}
};
class CC : public CB
{
public:
CC(void){}
virtual ~CC(void){}
};
int main(void)
{
CA* pA = new CA;
CB* pB = new CB;
CC* pC = new CC;
// ²»°²È«µÄת»»
CB* pTest1 = dynamic_cast<CB*>(pA);
cout << int(pTest1) << endl;
// °²È«µÄת»»
CB* pTest2 = dynamic_cast<CB*>(pB);
cout << int(pTest2) << endl;
// °²È«µÄת»»
CB* pTest3 = dynamic_cast<CB*>(pC);
cout << int(pTest3) << endl;
return 0;
}