• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > COM中的接口如何实现多继承?

COM中的接口如何实现多继承?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了com接口,com扩展接口,com接口是什么,com接口图片,主板com接口等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: COM中的接口如何实现多继承?
描述:

老是说interface可以实现多继承,但就是没找到IDL中实现多继承的例子,而且看过的书上也都没有。是不是不支持啊?


解决方案1:

首先分清楚一个概念:interface可以实现多继承的说法如果正确的话,那么这句话的意思就是COM组件可以从多个接口继承而来。但注意,这并不是说COM接口可以从多个其他接口继承而来。
实际上,COM是不允许一个接口从其他多个接口多继承而来,这是 COM的规范。其原因,DOX BOX在《COM本质论》第二章中说的很明确(参见该书P42~P43),简单的说,有两个 :一是如果允许接口多继承, COM将不再是"编译器无关"了,二是可以禁止接口多继承可以实现 COM接口和DCE RPC接口的自然映射。

解决方案2:

com不能完全实现类的继承,多重继承列是如此,
但它可对接口继承,多重继承可通过聚合实现,
然后可用查询接口方式获取基类访问入口访问基类成员,
我觉得这样做虽不直观,但这样基类跟类完全可以独立,相互影响较小。


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 急======》COM接口中,其接口函数是否可重载
  • 怎么在同一个com库中一个接口的方法中返回另一个接口分不够另外加分
  • 接口如何在COM类中调用?
  • 关于COM的参数类型问题
  • COM接口问题
  • COM接口问题
  • 请问,COM接口是否可以传递自己定义的结构?
  • com接口参数传递的问题
  • COM接口的问题(有代码)
  • 如何在COM接口中把自定义的类型传递出来使用?

相关文章

  • 2017-06-04 如何定制“数据链接属性”对话框的内容
  • 2017-06-04 如何在控件中显示控件自己的属性页?高手帮忙啊~~急~急~急
  • 2017-06-04 急求解决mschart控件的几个问题
  • 2017-06-04 怎么在VC做的ACTIVEX中实现打印预览??
  • 2017-06-04 如何用Delphi做一个ActiveX?
  • 2017-06-05 请教个OPC客户端的问题
  • 2017-06-04 用OLEDB的消费者模板可以执行SELECT这样的sql语句,并返回相应的行集吗?
  • 2017-06-05 请问CLSID使用方法正确吗//HRESULThr2=MathCreateInstance_uuidofCLSID_Math2;//这样啊?
  • 2017-06-04 请VC高手解决ActiveX的怪问题,关于放在windowopen页面中的ActiveX丢失事件,有源码
  • 2017-06-04 关于tools?

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • OLE容器出现Outofmemory问题
    • VC中用mediaplayerActive控件如何判断一个avi文件是否播放完毕
    • ATGrid报表控件/WEB插件[专业版]
    • 在dll的DLL_THREAD_ATTACH从不同方式获得当前线程HANDLE不一样
    • ActiveX安装提示名称修改
    • 关于dll文件使用的疑问
    • 在线等待,DCOM服务端如何得到调用端的机器名或IP地址
    • 串口读不到数据的奇怪现象
    • 新手提问-关于COM实现中的宏
    • 请问如何能截获子进程弹出的消息框?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有