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

C++ 奇怪的C++;语法方法声明,c++,syntax,C++,Syntax,我在一些C++代码中遇到了这种方法声明语法: formatted_log_t( log_level_t level, const wchar_t* msg ) : fmt(msg), level(level) {} 我不明白这是如何处理的,在大括号前出现“:”、“fmt”和“level”…这是C++初始化列表。您可以将其与类构造函数示例一起使用 class MaClasse { int myInt; MaClasse(int value) : myInt(value)

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

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

我不明白这是如何处理的,在大括号前出现“:”、“fmt”和“level”…

这是C++初始化列表。您可以将其与类构造函数示例一起使用

class MaClasse
{
    int myInt;
    MaClasse(int value) : myInt(value) 
    {
    }
};

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

请看一看:你从哪里学的C++你从来没有见过这个?事实上,我从一个月开始就在从头开始学习C/C++了……所有的道歉:)