奇怪的 C++ 语法方法声明

Strange C++ syntax method declaration

我在一些 C++ 代码中遇到了这种方法声明语法:

formatted_log_t( log_level_t level, const wchar_t* msg ) : fmt(msg), level(level) {}

我不明白这是如何处理的,大括号前有“:”、"fmt" & "level"...

这是C++初始化列表。您可以将它与 class 构造函数示例

一起使用
class MaClasse
{
    int myInt;
    MaClasse(int value) : myInt(value) 
    {
    }
};

用于初始化成员变量。使用初始化列表比在构造函数体中使用初始化更快