社区
C++ 语言
帖子详情
宏是否会被定义多份?
caddor2011
2014-05-21 03:53:45
stdafx.h中定义了一个宏,
其他cpp包含了stdfax.h
请问会不会被定义多份?
为什么不会?
宏又不是全局函数 ?
问题2:
stringstream 重复使用的时候, 正确清除缓冲区的方法是什么?
有的人说是str(""),有的说是.clear()
众说纷纭, 到底正确方法是什么?
...全文
100
5
打赏
收藏
宏是否会被定义多份?
stdafx.h中定义了一个宏, 其他cpp包含了stdfax.h 请问会不会被定义多份? 为什么不会? 宏又不是全局函数 ? 问题2: stringstream 重复使用的时候, 正确清除缓冲区的方法是什么? 有的人说是str(""),有的说是.clear() 众说纷纭, 到底正确方法是什么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
赵4老师
2014-05-22
打赏
举报
回复
编译选项加/EP /P,重新编译,查看宏展开后对应的.i文件。gcc加-E
enic
2014-05-22
打赏
举报
回复
#pragma once 或者头文件保护宏 或者 #pragma message("XXX")
linux_hsylar
2014-05-21
打赏
举报
回复
问题一我可以解答: 1.宏是在预编译阶段将宏代表的东西展开,其实和内联函数有点相似,内联函数也是把函数内部的代码复制到最终的.cpp中; 2.宏定义你在一个头文件中如果定义了,还需要在其他的xxx.cpp或者其他的xxx.h中再次定义麽? 3.如果你在一个头文件中定义了一个宏,一般不会在其他的头文件中在次定义了,就算被重复定义,也可能是因为头文件的重复包含所导致,这样的话,避免头文件重复包含可以使用下面的预编译指令处理: #ifndef __A_H__ #define __A_H__ #include<xxxx.h> //这里是可能被重复包含的头文件; #endif //但是一般实际写头文件的时候,每个头文件都是使用上面的预编译处理;
超级能量泡泡
2014-05-21
打赏
举报
回复
是编译单元!
「已注销」
2014-05-21
打赏
举报
回复
宏的作用域为文件,
MFC
宏
定义
详解
MFC
宏
定义
的详解,从此那些莫名其妙的
宏
在你面前了无秘密! <br>有了这份文档,MFC的
宏
就像是被扒光了衣服的女人
你必须知道的495个C语言问题
中,如果不关心a[]的哪一个分量
会
被写入,这段代码就没有问题,i也的确
会
增加1,对吗? 3.11 人们总是说i=i++的行为是未
定义
的。可我刚刚在一个ANSI编译器上尝试过,其结果正如我所期望的。 3.12 我不想学习那些...
java没有
宏
定义
_
宏
定义
(无参
宏
定义
和带参
宏
定义
),C语言
宏
定义
详解
宏
定义
是比较常用的预处理指令,即使用“标识符”来表示“替换列表”中的内容。标识符称为
宏
名,在预处理过程中,预处理器
会
把源程序中所有
宏
名,替换成
宏
定义
中替换列表中的内容。常见的
宏
定义
有两种,不带参数的
宏
...
python
宏
定义
_
宏
定义
(无参
宏
定义
和带参
宏
定义
),C语言
宏
定义
详解
宏
定义
是比较常用的预处理指令,即使用“标识符”来表示“替换列表”中的内容。标识符称为
宏
名,在预处理过程中,预处理器
会
把源程序中所有
宏
名,替换成
宏
定义
中替换列表中的内容。常见的
宏
定义
有两种,不带参数的
宏
...
函数式
宏
定义
与普通函数的区别?C语言
宏
定义
和
宏
定义
函数 ?
尽管函数式
宏
定义
和普通函数相比有很多缺点,但只要小心使用还是
会
显著提高代码的执行效率,毕竟省去了分配和释放栈帧、传参、传返回值等一系列工作,因此那些简短并且被频繁调用的函数经常用函数式
宏
定义
来代替实现...
C++ 语言
64,642
社区成员
250,580
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章