zoukankan      html  css  js  c++  java
  • 预处理宏适合使用的地方

    我们几乎总是希望用内联函数代替预处理器宏,但是有三个地方比较式适合使用预处理宏

    (1)字符串定义

    (2)字符串拼接

    (3)标志粘贴

    字符串拼接:#define DEBUG(X) cout<<#x"="<<x<<endl;//在这里字符串x和字符串=拼接在一起

    上面的覅难以可以打印任何变量的值

    标志粘贴:标志粘贴直接用##实现,在写代码时是非常有用的,它允许设两个标识符,并把他们粘贴在一起自动产生一个新的标识符

    #define FIELD(a)  char* a##_string;int a##_size;

    class Record{

           FIELD(one);

          FIELD(two);

          FIELD(three);

    };

    每次调用FIELD()宏,都将产生一个保存字符数组的标识符,和一个保存字符串长度的标识符。

  • 相关阅读:
    zombie处理
    exec
    fork
    udp program
    PS中进程状态
    关闭socket连接最好的方法
    setsockopt
    【Python】Webpy 源码学习
    web.py 安装
    WSGI、flup、fastcgi、web.py的关系
  • 原文地址:https://www.cnblogs.com/cplinux/p/5604530.html
Copyright © 2011-2022 走看看