C/C++中的##用法
##用来连接前后两个参数,把它们变成一个字符串。
内核中有很多的宏定义,在宏定义
define
中经常看到两个字符串##和#,这里把它的用法做一下说明:
##
是一个连接符号,用于把参数连在一起,例如:
#define FOO(arg) my##arg
则
FOO(abc)
相当于
myabc
#define CSS_DELETE_SERVIC_EX(ClassName) \
{ \
Delete##ClassName(); \
}
#define CSS_ADD_SERVIC_EX_EXTERN(ClassName) \
extern void Add##ClassName(BYTE, DWORD, DWORD, WORD, WORD, DWORD, DWORD);
#define CSS_MODIFY_SERVIC_EX_EXTERN(ClassName) \
extern void Modify##ClassName(BYTE, DWORD, DWORD, WORD, WORD, DWORD, DWORD);
#define CSS_DEL_SERVIC_EX_EXTERN(ClassName) \
extern void Delete##ClassName();
转载于:https://www.cnblogs.com/atoman/p/7344827.html
C/C++中的##用法相关推荐
- c++中static_cast用法与uchar/char的区别
1.c++中static_cast用法 static_cast是指显性类型强制转换,如: int a = static_cast<int>(120.34); 结果为a= 120. 和C语言 ...
- 简单介绍Python中异常处理用法
这篇文章主要给大家分享的是 Python中异常处理用法,为了保证程序的健壮性与容错性,即在遇到错误时候程序不会崩溃,我们需要对异常进行处理,下面来看看文章对此的用法,需要的朋友可以参考一下 为了保证程 ...
- 关于OpenCV中常见函数用法总结
关于OpenCV中常见函数用法总结 一 一般Mat的赋值操作 二 求Mat中的最大值以及最小值 三 randn()函数给图像添加高斯噪声 四 mean()函数的用法 五 系统计时器 六 矩阵之间的四则 ...
- java中import用法
java中import用法 单类型导入(single-type-import),例如import java.io.File; 按需类型导入(type-import-on-demand),例如 impo ...
- 一个线程中lock用法的经典实例
1 /* 2 该实例是一个线程中lock用法的经典实例,使得到的balance不会为负数 3 同时初始化十个线程,启动十个,但由于加锁,能够启动调用WithDraw方法的可能只能是其中几个 4 作者: ...
- 几个比较好用的Windows API在C#中的用法。
几个比较好用的Windows API在C#中的用法. #region Windows Api 定义 /// /// 模拟鼠标事件 /// /// 鼠标事件的Enum /// X座标 ...
- python管道界面_python中管道用法入门实例
本文实例讲述了python中管道用法.分享给大家供大家参考.具体如下: #!coding=utf-8 import multiprocessing def consumer(pipe): output ...
- MVC中HtmlHelper用法大全
MVC中HtmlHelper用法大全参考 解析MVC中HtmlHelper控件7个大类中各个控件的主要使用方法(1) 2012-02-27 16:25 HtmlHelper类在命令System.Web ...
- mysql raiserror_RAISERROR在SQL Server数据库中的用法
raiserror 是由单词 raise error 组成 raise 增加; 提高; 提升 raiserror 的作用: raiserror 是用于抛出一个错误.[ 以下资料来源于sql ser ...
- 查询前几条记录SQL在不同数据库中的用法
13,(1)查询前几条记录SQL在不同数据库中的用法; 1. ORACLE SELECT * FROM TABLE1 WHERE ROWNUM<=N 2. INFORMIX SELECT FIR ...
最新文章
- 实操教程|详细记录solov2的ncnn实现和优化
- html 密码框自动填充,解决chrom浏览器input密码框自动填充
- php 循环从数据库分页取数据批量修改数据
- 实心等腰直角三角形。
- 坐在马桶上看算法:Dijkstra最短路算法
- c语言绝对循环,c语言之循环
- mysql 大量列 动态变量_aardio动态mysql变量设置
- 04. 二维数组中的查找
- Unity WebGL自带VideoPlayer播放视频
- 运筹学实验报告c语言,运筹学教案-实验.doc
- tif怎么转化为jpg_tif怎么批量转换成jpg
- 武林传奇之七剑下天山java游戏开发商_武林传奇2之七剑下天山的配方
- python 多态app_**python多态
- mysql常用函数整理
- Android Studio - 北极狐 | 2020.3.1 补丁 2 现已推出
- java处理保留小数点后几位
- js中公有方法、特权方法、静态方法
- 数据分析的六大黄金法则
- PEO-b-PTMPM的嵌段共聚物复合囊泡/具有pH响应性的纳米颗粒/卤化银纳米粒子/聚合物纳米
- docsify 建立目录树脚本
热门文章
- 利用jdbc做一个购买的事务
- 课堂练习---最低价格买书
- 【转】Android:ListView常见错位之CheckBox错位
- 建议15: 使用dynamic来简化反射实现
- 云计算将使IT人失业?惠普推云计算裁员九千!程序员如何面对即将到来的产业大调整?...
- 看django视频笔记
- 基于linux-2.6.35的class_create(),device_create解析
- centos安装时卡住不动_转子流量计转子或指针停在某一位置不动的原因及处理方法...
- HAProxy实现负载均衡及高可用集群(corosync+pacemaker)
- kali-linux下搭建DVWA环境