• 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 > 谁能理解下列语法的含义?这是一个从msador15tlh中看到的

谁能理解下列语法的含义?这是一个从msador15tlh中看到的

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

佚名通过本文主要向大家介绍了下列语句语法正确的是,理解下列句子的含义,语法的含义,语法这一术语有 含义,如何理解语法的抽象性等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 谁能理解下列语法的含义?这是一个从msador15tlh中看到的
描述:

#if !defined(_COM_SMARTPTR)
 #if !defined(_INC_COMIP)
  #include <comip.h>
 #endif
 #define _COM_SMARTPTR        _com_ptr_t
 #define _COM_SMARTPTR_LEVEL2 _com_IIID
#endif
#if defined(_COM_SMARTPTR)
 #if !defined(_COM_SMARTPTR_TYPEDEF)
  #if defined(_COM_SMARTPTR_LEVEL2
   #define _COM_SMARTPTR_TYPEDEF(Interface, IID) \
    typedef _COM_SMARTPTR<_COM_SMARTPTR_LEVEL2<Interface, &IID> > \
            Interface ## Ptr
  #else
   #define _COM_SMARTPTR_TYPEDEF(Interface, IID) \
    typedef _COM_SMARTPTR<Interface, &IID> \
            Interface ## Ptr
  #endif
 #endif
#endif
#if !defined(_COM_NO_STANDARD_GUIDS_)
//////////////////////////////////////////////////////////
 #define _COM_SMARTPTR_TYPEDEF(Interface, IID) \
上面这句是不是把前面一串字符定义为"\"呢?
//////////////////////////////////////////////////////////
typedef _COM_SMARTPTR<_COM_SMARTPTR_LEVEL2<Interface, &IID> > \
            Interface ## Ptr
上面两句话又是什么意思呢?


解决方案1:

"\"在字符串中表示下一行和本行作为一行,便于格式化书写文本;
"##"表示连接字符串;
上边的宏展开实例是这样的:
_COM_SMARTPTR_TYPEDEF(interface, interfaceID) 
展开后为:
typedef _COM_SMARTPTR<_COM_SMARTPTR_LEVEL2 <interface, &interfaceID> >  interfacePtr
注意最后的"interfacePtr"是"interface"和"Ptr"连接而来。


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

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

  • 谁能理解下列语法的含义?这是一个从msador15tlh中看到的

相关文章

  • 2017-06-04 问题找到,不会解决,知道的来看看
  • 2017-06-05 这种异常是否一定会引起程序的崩溃?有什么办法可以处理吗
  • 2017-06-04 我在属性页里添加了一页来放置自己的设置,怎么让它每次出现都显示相应的当前值?
  • 2017-06-05 VC6建立ATLCOMAppWizard不能建立c文件么?
  • 2017-06-04 service停止处理时间超长的问题
  • 2017-06-05 接口方法重复了怎么办?
  • 2017-06-04 简单问题想用MFC开发一个ActiveX控件供网页调用。如何实现?
  • 2017-06-05 vc++net中怎么生成dll文件啊?
  • 2017-06-05 APIHOOK问题
  • 2017-06-05 互斥对象判断程序是否已在运行的问题

文章分类

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

最近更新的内容

    • 一个困惑的问题?
    • 向高手请教,急
    • 如何将程序拷到另一台机器,并运行?用WNetAddConnection2连接可以吗?
    • 求一个windowless的ActiveX实例代码
    • 如何得到一个dll中的的所有的组件对象?
    • 请问:同时安装了NET和VC6后,对VC6中的LoadLibrary的执行有什么影响吗?
    • 新手求教:使用vb写的com,在vc中调用时,如何得到接口ID
    • 遇到错误了调不过去!!大家帮我看看~~~谢谢
    • COM问题!
    • 如何编写一个像googledeskbar的程序,主要是如何实现在任务栏添加工具栏

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

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