【发布时间】:2016-01-21 16:34:20
【问题描述】:
我有一个经常使用的宏,灵感来自另一个问题:
#define to_string(x) dynamic_cast<ostringstream &> (( ostringstream() << setprecision(4) << dec << x )).str()
这个非常方便,例如用于接受字符串输入的函数:
some_function(to_string("The int is " << my_int));
但是有人告诉我,在 C++ 中使用宏是不好的做法,事实上,我在将上述内容用于不同的编译器时遇到了问题。有没有办法把它写成另一种结构,例如一个函数,哪里会有同样的通用性?
【问题讨论】:
标签: c++ function macros conventions