C++(20):通过source_location实现日志函数

C++20中引入了std::source_location,用来描述函数调用的上下文信息。

其主要的成员函数如下:

  • line():获取行号。
  • column():获取列号。
  • file_name():获取文件名。
  • function_name():获取函数域名。
#include 
#include 
#include 
 
void log(std::string_view message, const std::source_location& location = std::source_location::current())
{
    std::cout << location.file_name() << ':'
              << location.line() << ' '
              << "func:"<

运行程序输出:

./file.cpp:16 func:int main() log:Hello world!

你可能感兴趣的:(C/C++,c++)