我有一个记录宏,它接受一个消息和参数,比如说:
int i = 5
LOG1("message", i);
这将记录:
message, i = 5
为此,我依赖于std :: stream和operator<<。
现在,如果我这样做
char* a = "foo";
LOG1("message", a);
结果将是:
message, a = foo
问题是,是否有一个函数可以检查char *的值是否可以安全地在流operator <<
中使用,或者我应该检查哪些潜在的攻击除了明显的...它太长了。