我正在尝试为调试打印定义一个类方法,其行为类似于printf
:
inline void debug(const char* fmt, ...) __attribute__ ((format (printf, 1, 2)))
这抱怨:
error: format string argument not a string type
想起一个类方法声明有一个隐式this
参数,所以我把参数的位置改成了2、3:
inline void debug(const char* fmt, ...) __attribute__ ((format (printf, 2, 3)))
现在它编译了,但看起来参数被移动了,好像this
参数被视为参数列表的一部分。
如何判断this
不是我要打印的字符串的一部分的函数?