#define val 1+999
cout<<val<<endl;
----------
都知道输出应该是数字类型1000吧那如果我要求输出
"1+999" 既保持原来宏展开的风貌
任何做到呢一个刚进公司的小妹妹问的
汗  难住了

解决方案 »

  1.   

    呵呵 是的
    但你考虑下面的
    #define RUNTIME_CLASS(class_name) (&class_name::class##class_name)
    我要得到其实际的展开
    注意我们下面
    要执行COUT<<RUNTIME_CLASS(JYG)<<ENDL
      

  2.   

    应该得到的结果
    "(&jyg::classjyg)"
      

  3.   

    注意题目呀
    考虑下面的
    #define RUNTIME_CLASS(class_name) (&class_name::class##class_name)
    我要得到其实际的展开
    注意我们下面
    要执行COUT<<RUNTIME_CLASS(JYG)<<ENDL应该得到的结果
    "(&jyg::classjyg)"
      

  4.   

    听说MAP文件能看
    我生成了
    里面乱七八糟的
    那里有什么展开后的代码?
      

  5.   

    #define RUNTIME_CLASS(class_name) (&class_name::class##class_name)
    楼主,自己写个函数吧。
      

  6.   

    #define val(x)  #x
    #define xx val(1+999)
    cout<<xx<<endl;