paip.c++ 宏的展开调试.

paip.c++ 宏的展开调试.


这个需要宏调试...宏调试ms没有好的工具.只好手工调试.


我使用的ide是qt creator..


比如.


#define Y X*2
#define X 3


//#include <iostream>


using namespace std;


int main()
{
    cout<<Y;
    return 0;
}


第一,把//#include <iostream>注释掉,贝儿扩展开代码太长了..
第2.编译这个cpp,ide会出来提示..不个其中的参数改给挂..
g++   -pipe -fno-keep-inline-dllexport   -g -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -I..\macroExtend -I"." -I"..\..\Qt\Qt5.1.1\5.1.1\mingw48_32\mkspecs\win32-g++" -E ..\macroExtend\main.cpp
注意:-E必须大写..
第3.运行这个命令.出来以下宏的运行结果..
 




using namespace std;


int main()
{
    cout<<3*2;
    return 0;
}


参考:
利用GCC预处理展开宏 - DYF的专栏 - 博客频道 - CSDN.NET.htm
[笔记]使用gcc的-E -P选项展开源代码中的宏.htm
原文地址:https://www.cnblogs.com/attilax/p/15199501.html