【发布时间】:2011-10-25 06:11:39
【问题描述】:
我希望为我的日志记录实现一个类似 printf 的 api。它应该类似于调用 printf。 例如:
persistent_log(LogType0, "This is buffered writing %d", i);
我查看了变量参数的东西,但似乎我需要知道那里的参数的数量和类型。所以我在这方面需要更多帮助。
【问题讨论】:
-
你想使用 C++0x 还是 C 风格的 va_args?
-
@awoodland , C 风格 va_args
-
请注意,如果您使用
va_args方法,您将无法在编译时检查类型。如果您对 C++ 没问题,请使用 Boost.Format 或在模板上汇总解决方案。否则就接受缺乏类型安全。 -
因为你想使用 va_args 我删除了 C++ 标签。
标签: c