首页 > 其他分享 >宏的一些细节

宏的一些细节

时间:2022-09-30 12:36:30浏览次数:48  
标签:cout MACRO 细节 func cb 一些 include

#include <stdio.h>
#include <iostream>

#define MACRO(x,y,cb) \
{ \
printf("%s, %s\n",(x), (y)); \
(cb);  \
}
int func( ) {
    std::cout << "calling func" << std::endl;
    return 0;
}
int main()
{
    MACRO("XXX", "YYYY", func()) // 这里只是没涉及宏参数中带有comma的情况,如果使用了func<a,b>类似的情况,改为MACRO(..., (func()))更好,顺便可以把macro中cb的括号去掉
    (func());
    return 0;
}

标签:cout,MACRO,细节,func,cb,一些,include
From: https://www.cnblogs.com/ijpq/p/16744531.html

相关文章

  • 关于Centos7Th 初始化的一些概述
    -概述Q:为什么要初始化,什么是初始化?A:一般初始化是根据的后期要部署的业务环境来定制的,新装的系统其自带的软件不够支撑各种开发环境或者运维工作;需要部署和设置对应......
  • Pycharm-001-Pycharm一些设置
    1、设置滚轮滑动变大字体File—>setting—>Keymap—>IncreaseFontSize(双击)—>在弹出的对话框中选择AddMouseShortcut  出现上述窗口,按住ctrl+滑轮上滑2......
  • TypeScript一些见解
    1.TypeScript产生背景:  TypeScript是JavaScript的一个超集,支持ECMAScript6标准(ES6教程)。  TypeScript由微软开发的自由和开源的编程语言。TypeSc......
  • 算法题注意事项/debug细节(Java语言)
    注意循环中的序号使用:i,j,k。看清现在在哪一层,要用哪个,不要用错。注意Java中的方法是都是值传递(pass-by-value),没有引用传递。对于对象是地址的值传递不要在循环中反......
  • 归并排序(merge sort):细节,注意事项
    如果在某一个程序中要多次使用归并排序,最好将在排序中要使用的tmp数组定义在排序函数之外,将tmp作为归并排序方法的一个参数,而不是在归并排序中每次新定义一个tmp数组,因......
  • 与图相关的一些算法
    与图相关的一些算法作者:Grey原文地址:博客园:与图相关的一些算法CSDN:与图相关的一些算法图的说明线性表中的元素是“一对一”的关系,树中的元素是“一对多”的关系,图结......
  • swiper4的一些使用点
      1.如果想把箭头变成自己的,就直接在里面添加标签i<divclass="swiper-button-prev"slot="button-prev"><iclass="iconfonticon-z......
  • 对数值类网游反外挂的一些思路(想法)
    今天在某群聊的时候,看见有人在谈论某网游的外挂..在有一个人问是“什么挂”的时候,我却想到另一个问题:我要是这公司的人,我该怎么反外挂?几乎是一瞬间的,我就想到2个方法1......
  • 企业知识管理怎样做?一些解决方案分享!
    人们发现,挖掘知识、创造知识、生产知识、以知识赋予产品附加值,是企业和社会持续发展的动力源泉。因此,知识管理越来越受到人们的重视。知识管理作为一种新兴的管理概念,已为学......
  • EasyCVR视频融合平台Linux版本解压安装包的一些注意事项
    EasyCVR视频融合平台支持多种协议、多种类型的设备接入,拥有灵活丰富的视频能力,可提供视频监控直播、云端录像、云存储、录像检索与回看、智能告警、平台级联、服务器集群等......