• 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中传递数组和结构体"等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 看到一片帖子, 讨论一下: "关于在COM中传递数组和结构体"
描述:

http://www3.ccw.com.cn/club/essence/200106/2119.htm
------------全文-----------------
在COM中传递数组可以通过VARIANT来实现。在VARIANT中包含一个SAFEARRAY,SAFEARRAY描述一个数组。VARIANT和SAFEARRAY在Automation中都有定义。使用这个方法的好处是支持Automation,换句话说就是可以在VB中使用,充分实现COM跨语言的好处。
我不认为在COM中传递数组和结构体是个好主意,除非有特别的性能要求,因为它明显违背了COM对象相间的封装原则。COM对象间传递的应该是接口(interface)指针,而不是大块的数据。数组可以通过集合来实现,结构体可以通过属性(property)来实现。真正的数据在实现中被定以成私有的(private),只能在内部使用。
--------------------end----------------
对于第二段, 难道我们要把每个结构体都做成接口? 然后做个集合来包含这个接口, 以达到传递结构体数组?
直接传递结构体数组和传递规定大小的数组好像都可以啊, 如果把一个结构体做成接口, 是否方便了? 编码方面?


解决方案1:

沒有看全文
從引文來看他說的不是能不能的問題而是好不好的問題 當然兩种方法各有其優點和缺點 但是顯然現實的情況是兩种方式都在使用 看你需要的是哪些特徵 然後才能決定你需要哪种使用方式


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

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

  • 看到一片帖子,讨论一下:"关于在COM中传递数组和结构体"

相关文章

  • 2017-06-04 想学ActiveX需要看什么?求助高手
  • 2017-06-04 用什么办法可以得到某个com组件在磁盘上的路径?
  • 2017-06-04 关于ATL编程什么书最好?
  • 2017-06-04 在一个ActiveX控件(A)上动态建立另一个ActiveX控件(B),如何建立?
  • 2017-06-04 com组件抛出异常,让JS可以catch
  • 2017-06-04 socket如何绑定指定的路由入口
  • 2017-06-05 如何屏蔽键盘上的ATL+CTRL+DEL的组合键功能?
  • 2017-06-05 请问如何捕获资源管理器默认图片浏览?
  • 2017-06-05 急!跪求,IE浏览器不支持这个ACTIVEX控件的原因及解决办法!
  • 2017-06-04 用ATL做了个Word插件,遇到的问题如下:

文章分类

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

最近更新的内容

    • 求教临时文件的问题?
    • atl和VB比起来的优势在哪里?
    • 关于VC使用COM组件
    • 我相信人多力量大,大家帮我想想怎么办
    • ATL对话框中使用文本编辑框控件的问题?急
    • 谁告诉我如何在NT中隐藏自身进程?答对给全分CB,VC都行
    • 怎么关闭网页
    • 谁能给一份与多个串口进行通讯的多线程源代码,如符合要求,本人高分相送!
    • ReadProcessMemory的使用
    • 请问ivtBluesoleil蓝牙问题

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

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