• 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 > ATL,添加方法,参数有in和没in,感觉没什么区别啊!

ATL,添加方法,参数有in和没in,感觉没什么区别啊!

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

佚名通过本文主要向大家介绍了atl34砂轮,atl71.dll修复,atl方形动力电池,atl80.dll官方下载,atl71.dll一键修复等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: ATL,添加方法,参数有in和没in,感觉没什么区别啊!
描述:

初学ATL做com, 对方法参数有in和没in分别做了试验,结果没什么区别,他们的区别在哪里呢?
idl:
[id(2), helpstring("方法Add")] HRESULT Add(LONG a, LONG b, [out,retval] LONG* pVal);
[id(3), helpstring("方法Add2")] HRESULT Add2([in] LONG a, [in] LONG b, [out,retval] LONG* pVal);
.cpp
STDMETHODIMP CCalc::Add(LONG a, LONG b, LONG* pVal)
{
  *pVal = a + b;
  return S_OK;
}
STDMETHODIMP CCalc::Add2(LONG a, LONG b, LONG* pVal)
{
  *pVal = a + b;
  return S_OK;
}
C#测试:
 Calc c = new Calc();
 int ret = c.Add(2, 3); //ret等于5
 ret = c.Add2(3, 3);    //ret等于6


解决方案1:

The [in] attribute is applied to a parameter by default when no directional parameter attribute is specified.

解决方案2:

引用 2 楼  的回复:
引用 1 楼 的回复:
in out只是个标记,用来说明参数是输入还是输出,宏定义都是空
宏定义都是空,是什么意思?谢谢

只是作为标注提示的作用
编译预处理时会被直接忽略


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

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

  • ATL怎么实现可变参数的接口?
  • 怎样用ATL写一个含有其它组件的进程外COM
  • ATL7中加入socket的头文件编译出错
  • 在ATL工程MFC窗口调用Create失败(注:我的ATL工程支持MFC)
  • ATL正则表达式验证遇到中文出现异常!
  • 关于ATL做复合控件的问题
  • [讨论]ATL中的文本字符串,我该定义为什么类型
  • ATL开发指南第2版为什么所有的书店都没有卖的?电子版也没有
  • 大家一般都怎么打包Atl开发的ActiveX控件?
  • 求ATL解决方案

相关文章

  • 2017-06-04 ATLCOM
  • 2017-06-04 关于在网页中activex的创建时间问题
  • 2017-06-04 请问QueryInterface和FindInterface的区别?
  • 2017-06-04 ALT为何物?
  • 2017-06-04 请教简单的STL问题,在线等。。。
  • 2017-06-04 ie加载控件的问题
  • 2017-06-05 有没有函数能方便的截取OLECHAR的一段内容。
  • 2017-06-05 请问我如何在窗口画好后在截屏,我原来有钩子,在处理完WM_PAINT消息后截屏,这样对不对???
  • 2017-06-05 求高手看看这段代码错在哪里,为什么老是"不能打开数据库!";
  • 2017-06-05 这是我写的一份钩子代码!!在XP下可以运行,但在9X下有问题!!那位仁兄提示提示!!

文章分类

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

最近更新的内容

    • 高分请教控件问题,十万火急!!!
    • 一个OCX控件调用javascript方法刷新页面的严重问题
    • jni:java通过jni如何调用MFCDLL
    • 一个很实用的问题,如何在IE中加上自己的按钮。
    • ●●●键盘钩子的问题●●●
    • 有没有用VS2010创建OCX组件的DEMO
    • 对MSFlexGrid控件动态设置字体问题
    • 能用多线程同时操作一个文件吗?
    • 请问如何使用虚拟打印机(如:MicrosoftOfficeDocumentImageWrite)把office文档转换成图片(如:jpeg,bmp等)?
    • 键盘钩子问题:采用远程注入的方式键盘钩子实效

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

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