标签: c++ c++11
在编译时评估strlen(__FILE__) - 假设我使用的是最近的编译器(GCC,Clang,MSVC)?
strlen(__FILE__)
答案 0 :(得分:8)
由于constant-folding优化传递,Clang和gcc都能够在编译时计算出来,但这在C ++标准中是无处可执行的。
使用sizeof could ensure这是在编译时计算的。
sizeof
答案 1 :(得分:0)
不,因为strlen没有被标准定义为constexpr函数