C++为什么这样可以获得变量名? 20
#definename(value)cout<<#name;这真是个奇迹!错了==错了是这样#definename(value)cout<<#value;( ̄▽ ̄")粗心...
#define name(value) cout<<#name;
这真是个奇迹!
错了==错了
是这样
#define name(value) cout<<#value;
( ̄▽ ̄")粗心了 展开
这真是个奇迹!
错了==错了
是这样
#define name(value) cout<<#value;
( ̄▽ ̄")粗心了 展开
3个回答
展开全部
#name是字符串扩展,只要用name(),就会输出name。这没有什么。再给你说说,
#define A(exp) cout << "I am "#A << endl;
#define B(exp) cout << sz##B << endl;
分别输出的是 i am A ; szB ;
#define A(exp) cout << "I am "#A << endl;
#define B(exp) cout << sz##B << endl;
分别输出的是 i am A ; szB ;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#这实际上是一个编译时符号,在编译时编译器帮你取得形参名称
追问
为什么这样定义就是取得形参名称?
追答
不是为什么,这就是一个符号而已嘛,就是在编译时编译器会识别这个符号,然后把它转化为对应的内容。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询