【发布时间】:2025-12-07 06:50:01
【问题描述】:
第一行函数的目的是什么?
void foo::bar()
{
const char * function_name = "bar"; // <<< WHY??
/* Code */
/* More Code */
/* Waiting for function_name to be used !!!*/
/* Wow it is totally useless?*/
return;
}
`
这在有经验的人设计的代码中无处不在,没有要打印的宏。它有什么技巧吗?
【问题讨论】:
-
你能举一个例子来说明这是常见的用法吗?也许链接到一个开源项目?我只在它被用于日志记录的情况下看到这样做,因此有时仍然存在于没有日志的小函数中。
-
这是一个只有把它放在那里的人才能回答的问题(我怀疑它是一个调试辅助工具,或者与一个曾经存在的宏有关)
-
@BoBTFish 不幸的是,这是在专有代码中。我搜索了打印为“FUNCTION”的调试宏,但没有。由于它没有被使用,编译器对 O1 本身充满信心地删除了它。其他所有编写代码的人都遵循相同的文化
标签: c++