2

我敢肯定,我不是第一个遇到这种情况的人,但是,无论是这里还是一般都找不到任何具体的东西。

我正在使用一个旧的记录器,它使用 printf 格式......例如:

LOG_ERROR("Error Code: %d. Additional data %s", error.ID, error.serialize());

并希望转移到流式记录器。例如:

LOG_ERROR("Error Code: " << error.ID << "Additional data: " << error.serialize());

自然,代码库很大,我想自动化它。我想我可以想出一个脚本来完成它,但它看起来并不那么简单……我相信有一个非常简单的方法。谢谢!

4

1 回答 1

1

我不敢自动化这项任务。您可以将所有旧的 LOG_ERROR 重命名为(类似于)LOG_ERROR_FORMAT,让 LOG_ERROR_FORMAT 创建一个字符串并将其传递给新的 LOG_ERROR。

如果您真的想这样做,我建议您查看一些 printf 实现以正确解析

于 2013-10-17T13:23:30.053 回答