• 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

佚名通过本文主要向大家介绍了菜鸟问题,菜鸟驿站存在的问题,菜鸟物流存在的问题,菜鸟驿站问题,菜鸟网络存在的问题等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 一个关于com的菜鸟问题
描述:

今天在看com时,本一个问题弄糊涂了,其实这个问题很早就出现了,只不过没有去细想。问题是这样的,
com中,接口用IID标识,com对象是接口实现,用clsid来标识,那么com组件时是什么?他是com对象的实现吗?com对象只是一个类,不占用内存,这个c++里的类差不多一样的意思,我看潘爱民说组件时com对象的载体,对象不是实体,组件怎么回是对象的载体呢?在就是组件具有唯一性,他是怎么实现的,用clsid吗?
我看潘爱民的书,得出这样一个关系:一个组件对应n个com对象,1个com对象对应多个com接口,请问这个问题怎么解释?


解决方案1:

我说几点:
 com组件是具有一定特殊性的dll或者exe.是一个可重用的二进制代码的集合体,可以拥有几对(对象类和对应的对象类工厂)。对象类工厂产生对象类的一个实例(也就是com对象,从这个意义上也可以认定跟c++中的对象概念是近视的),如果用c++来描述接口,那接口一般是具有纯虚函数的c++类。对象类实现该接口采用两种方式:1。该接口作为对象类的父类(atl中采用),2。该接口作为对象类的嵌套类(mfc中采用)。

解决方案2:

我想说说我的理解
1、clsid表示一个组件,IID表示组件中的一个接口,一个组件可以实现几个接口,组件相当于c++中的类,接口相当于父类
2、创建好一个组件(clsid)后,可以通过这个组件查询(QueryInterface)相应的接口,就象由子类对象强制转换(reinterpret_cast)父类指针
3、com组件是平常用到的一个dll或其他,就是一个运行代码的集合体,就是说可以包含很多c++类,所以可以拥有几个com对象


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

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

  • 菜鸟问题-这样的功能能用ACTIVEX实现么?(急)
  • MFC开发OCX控件菜鸟问题,如何在OCX中插入对话框,并能在上面添加事件控件
  • ┐┐┐┐┐┐┐┐┐┐┐┐┐┐┐┐┐关于“复合控件”的菜鸟问题。
  • 菜鸟问题,调用自己写的第一个COM出问题了
  • 菜鸟问题:MFCActiveX事件中的参数怎么使用自定义数据类型???
  • 菜鸟问题,关于进程
  • 菜鸟问题:怎样在MFC中以类函数为线程??
  • 主要是怎么连接来测试dll菜鸟问题急
  • 菜鸟问题怎么把自己写的线程函数放到一个类里面
  • 菜鸟问题;;调用简单的dll出现下列错误

相关文章

  • 2017-06-05 急人啊!!VS2005下,为什么dll没有把函数导出来????
  • 2017-06-05 为什么静态链接MFC库后AfxLoadLibrary变成未定义的了?
  • 2017-06-05 DLL调用问题,恳请各位高手指点
  • 2017-06-04 遍邀高手,解决难题
  • 2017-06-05 HelloEveryMasterOfVC++
  • 2017-06-05 如何读取其它程序中MFCGridCtrl控件的单元格数据
  • 2017-06-04 控件中消息的截获
  • 2017-06-04 atl中createwindow创建了一个动态listbox,添加项的问题
  • 2017-06-05 windows升级接口错误
  • 2017-06-04 编写exe类型的ATL是否可以使用mfc类

文章分类

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

最近更新的内容

    • 菜鸟求助,activx返回对象到javascript
    • 如何实现dialog的唯一性
    • Com接口调用报错
    • MMC编程
    • 如何将网页的FLASH控件扣出来?
    • 嵌有ActiveX的网页在win95+IE4里能用吗?
    • 自动化对象数据类型问题,有难度,相信大家都遇到过!
    • 键盘钩子在IE中的问题
    • 怎么用GetObject返回自己写的组件的实例?
    • 手机短信软件开发

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

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