假设您的C++编译器支持它们,是否有任何特殊原因不使用__FILE__,__LINE__以及__FUNCTION__用于记录和调试目的?
__FILE__
__LINE__
__FUNCTION__
我主要关注的是为用户提供误导性数据 - 例如,由于优化而报告错误的行号或功能,或者因此导致性能下降.
基本上,我可以信任__FILE__,__LINE__并__FUNCTION__以永远做正确的事?
c++ debugging logging c-preprocessor
我知道没有标准的C函数来做到这一点.我想知道Windows和*nix上的技术是什么?(Windows XP是我现在最重要的操作系统.)
c windows debugging cross-platform stack-trace
debugging ×2
c ×1
c++ ×1
c-preprocessor ×1
cross-platform ×1
logging ×1
stack-trace ×1
windows ×1