class a:
{
public: a(){}
};
class b:public a
{
public:b(){cout<<"is b."<<endl;}
};
main
{
b* pb=new b();
a* pa=(a*)pb;
b* pb2=(b*)pb;
pb2->a();//这样是可以的
}
”输出为:is b.在聚合中有:
IUnknown* pUnk=preinterpret_cast<IUnknown*>(static_cast<INondelegatingUnknown*>(this));
为什么"pUnk"指向的是INondelegatingUnknown接口???
{
public: a(){}
};
class b:public a
{
public:b(){cout<<"is b."<<endl;}
};
main
{
b* pb=new b();
a* pa=(a*)pb;
b* pb2=(b*)pb;
pb2->a();//这样是可以的
}
”输出为:is b.在聚合中有:
IUnknown* pUnk=preinterpret_cast<IUnknown*>(static_cast<INondelegatingUnknown*>(this));
为什么"pUnk"指向的是INondelegatingUnknown接口???
解决方案 »
- 请教透视图像变为正视图像的算法
- dll导出函数与静态成员变量的奇怪现象,望前辈指点~
- 求助:Xtreme Toolkit中的All Project 是如何创建的?
- 发布我的毕业设计代码--注册表监控--注册表小精灵
- VC对Excel某列排序,请高手们帮助一下哈
- 哪位老大可以提供完整的获取数据包的vc++程序(winsoket and winpcap)
- =================请大家来讨论一下 ====================
- 如何使用CListCtrl::SetView()
- 在VC++6.0中怎样使用ADO?
- 请问仿广告切换的效果大概怎么做的 只要说大概方法就行了
- 哪里有读取文件的例子或函数?
- 高手请指点!!!
class a:
{
public:a(){}
public: fa(){}
};
class b:public a
{
public:b(){}
public:b(){cout<<"is b."<<endl;}
};
main
{
b* pb=new b();
a* pa=(a*)pb;
b* pb2=(b*)pb;
pb2->b();//这样是可以的
}
”输出为:is b.在聚合中有:
IUnknown* pUnk=preinterpret_cast<IUnknown*>(static_cast<INondelegatingUnknown*>(this));
为什么"pUnk"指向的是INondelegatingUnknown接口,而不是IUnknown,聚合本身不是也包含有IUnknown接口吗???