#1119·glog

我们是否可以在 LOG_IF 中使用 google::NullStream 而不是 google::LogMessageVoidify?

作者: folery创建于 2024年8月1日更新于 2024年10月31日

#define LOG_IF(severity, condition)
static_cast(0),
!(condition)
? (void)0
: google::logging::internal::LogMessageVoidify() & LOG(severity) 现在 LOG_IF 是这样实现的。阅读了文档 https://GitHub.com/asplingzhang/asplingzhang.GitHub.io/blob/main/docs/_posts/webrtc/logging/2022-06-14-why-static_cast-void-and-LogMessageVoidify-needed-in-logging-macros.md,我理解了使用 LogMessageVoidify 的原因,它将 LOG_IF 从 ostream 转换为 void。如果有人想要包装 LOG_IF 或 VLOG,就会导致错误: