在STL中,碰到如下问题

blazingSnow 2003-08-28 09:09:01
1.#define __STL_CLASS_REQUIRES(__type_var, __concept) \
static int __##__type_var##_##__concept
中的##是起什么作用?

2.#define __STL_REQUIRES_SAME_TYPE(__type_x, __type_y) do {} while(0)
如果不想实现它,那么为何不
#define __STL_REQUIRES_SAME_TYPE(__type_x, __type_y) ;

#define __STL_REQUIRES_SAME_TYPE(__type_x, __type_y) while(0)
而偏偏要来个不循环 do {} while(0)

...全文
89 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengfeng2003 2003-08-28
  • 打赏
  • 举报
回复
##是连接符
即把__和__type_var的值和_和__concept的值连接成一个名字
oopig 2003-08-28
  • 打赏
  • 举报
回复
1.##是连接符
2.#define __STL_REQUIRES_SAME_TYPE(__type_x, __type_y) while(0)
会有问题,比如
__STL_REQUIRES_SAME_TYPE(__type_x, __type_y)
int i = 0;
就有问题

24,853

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧