那有人就问了,未知变量怎么传递过来呀?
#define WRITELOG(x) tlog.writestring(x)
#define WRITELOGINT(x) tlog.writeint(x)
我想写成一个宏
#define WRITELOG(x) x is int?tlog.writeint(x):tlog.writestring(x)
------解决方案--------------------
用函数重载。
------解决方案--------------------
tlog.write()函数做个重载不就行了
说是未知,其实你还是知道不是int就是string对吧
------解决方案--------------------
楼主的需求是处理任意类型变量的log,继承和typeid,都需要穷举,代码冗余比较大。
可以使用模板来实现。