paip.c++ 宏的展开调试.
2013-10-02 14:08
267 查看
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
这个需要宏调试...宏调试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
相关文章推荐
- 第一次用c语言编写程序
- C语言strlen, strcpy, strcmp,strcat函数的实现
- c++ delete[]:怎么知道需要释放的空间大小
- proc/c++(一) 快速上手
- C++虚基类(virtual base class)
- C++ 11右值引用
- 【C++第五课】---析构与构析上
- 关于C++ const 的全面总结
- C++11 并发指南三(Lock 详解)
- C++自定义类型的比较常用做法
- C++抽象类
- C++ 虚函数表解析
- c++类的构造函数详解
- C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区
- POJ 1318
- C++学习笔记: CreateToolhelp32Snapshot
- C++类的成员函数回调
- C++中异常处理的语法 try catch throw
- VC++界面美化---模仿MS Office 选项对话框
- C++编程命名规范