社区
ATL
帖子详情
请问COM能否实现多态?
beanders
2005-03-25 11:31:11
我想用COM对象 封装 三种设备对象 ,而这三种设备 又具备一定的共性,所以我想从 一个共同的基类继承.
另外, 将来客户程序操作的时候,我希望能用一个对象指针来操作这 三种对象(比如调用这三种对象的函数,而这个函数在三种对象中同名), 请问该怎么实现?
谢谢
...全文
140
13
打赏
收藏
请问COM能否实现多态?
我想用COM对象 封装 三种设备对象 ,而这三种设备 又具备一定的共性,所以我想从 一个共同的基类继承. 另外, 将来客户程序操作的时候,我希望能用一个对象指针来操作这 三种对象(比如调用这三种对象的函数,而这个函数在三种对象中同名), 请问该怎么实现? 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
beanders
2005-03-28
打赏
举报
回复
to weirdy(远古传说)
请问更改哪里?
我用向导定义了一个 IDevice 接口,然后手动定义了一个IDeviceA接口
在VB中, 当我输入 '.' 的时候它只出现了一个 Device 和 IDevice,尽管 IDeviceA也是可用的,但为什么不能出现?我希望IDeviceA也能象IDevice一样 把前面那个 'I'省略掉,请问该怎么做?
谢谢
xenke
2005-03-28
打赏
举报
回复
1.VB不是脚本,IDispath继承自 IUnknown
2,更改.idl文件中相应的名字
beanders
2005-03-28
打赏
举报
回复
to 各位老大,可能我没讲清楚,所以耽误大家时间了
昨天研究了一下 <Dr. GUI on Components, COM, and ATL> 实现了我的目的:
用向导定义了一个接口和它的实现类, 手动添加了 3个接口,并 让原来的实现类多重继承自这三个接口,
关于多态,参考了《ATL技术内幕》:实现类里 定义了三个不同的计算函数,在三个接口中分别定义了3个声明完全相同的 计算函数(直接调用 自己的计算函数),和三个不同名称的 计算函数(纯虚函数,对应实现类里的3个函数)
一点疑问:
1 我看书上都说 IDispath接口是为了给脚本语言用的,但我的三个接口都继承自 IUnknown,VB照样能用,这是为什么?
2 我想更改接口在VB中显示的名字,应该怎么做?谢谢
beanders
2005-03-27
打赏
举报
回复
to sjcode(COM就是爱)
请详细些吧
有代码吗?谢谢
beanders
2005-03-27
打赏
举报
回复
up
sjcode
2005-03-27
打赏
举报
回复
我的mail是sj.code@gmail.com
发邮件给我
hw110
2005-03-26
打赏
举报
回复
可以定义一个基接口啊,然后其他三个具体接口从此基接口派生
beanders
2005-03-26
打赏
举报
回复
btw:我得客户程序可能是 VB
设置参数 和 调用计算程序 不是同一个 程序模块做的, 将来应该是 硬件访问程序 来设置 设备的参数 , 显示程序来 调用计算程序,获得计算结果
谢谢
beanders
2005-03-26
打赏
举报
回复
to 两位老大
我想的是运行时的多态
我想实现这样:
实现一个 设备群对象, 客户程序通过设备群对象 得到一个 设备数组 or 设备链表, 这三种设备就存放在这个数组里 ,客户通过 基类指针 访问这个数组中的单元,来得到这个设备的编号,以及确定这个对象是哪种设备, 然后 通过具体设备的指针来设置 具体设备的参数, 设置好参数后, 就可以通过 基类指针调用 基类实现的一个虚函数 来完成不同的计算
不知道我说得是否明白
谢谢
sjcode
2005-03-26
打赏
举报
回复
你可以定一个共性的接口,让这三个类分别实现这个接口的函数。
通过queryInterface来转换接口指针类型,完成客户端的调用.
wshcdr
2005-03-26
打赏
举报
回复
COM的C实现就是用 用纯虚函数来实现的,多态当然一点问题都没有.
java中
多态
实现
java
多态
实现
的课件,给那些需要的人 讲述了java
多态
的概念、分类、
实现
综合案例讲解、总结
多态
的作用
C++面向对象之
多态
的
实现
和应用详解
本文主要给大家介绍的是关于C++面向对象之
多态
的
实现
和应用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
多态
大家应该都听过C++三大特性之一
多态
,那么什么
多态
呢?
多态
有什么用...
C++
COM
编程之接口背后的虚函数表
而
COM
中的接口就将这一机制运用到了极致,所以,不知道
多态
机制的人,是永运无法明白
COM
的。所以,在总结
COM
时,是非常有必要专门总结一下C++的
多态
机制是如何
实现
的。
多态
什么是
多态
?上面也说了,
多态
就是用父...
什么是
多态
?为什么要使用
多态
?什么时候用
多态
?
多态
是如何
实现
的?使用
多态
有什么好处?
多态
是如何
实现
的?使用
多态
有什么好处?我们将根据以上五个问题展开激烈的讨论。 什么是
多态
?
多态
,顾名思义指“多种形态”。
多态
表示不同的对象可以执行相同的动作,但要通过它们自己的
实现
代码来执行。 ...
什么是
多态
?如何
实现
?只看这一篇就够了
2.
多态
的定义及
实现
2.1
多态
的构成条件
多态
是在不同继承关系的类对象,去调用同一函数,产生了不同的行为。 那么在继承中要构成
多态
还有两个条件: 必须通过基类的指针或者引用调用虚函数 被调用的函数必须是虚...
ATL
3,248
社区成员
48,531
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章