NetworkManager::NetworkManager():m_Thread(0), m_Continue(true), m_Init(false){
}
Run Code Online (Sandbox Code Playgroud)
第一个是名称空间,第二个是函数的名称.那三个参数是什么?我认为它可能与继承有关,但那些不是类名.这些是私人变量.
提前致谢.
小智 12
这是构造函数的定义 - 没有名称空间.
NetworkManager :: NetworkManager() : m_Thread(0), m_Continue(true), m_Init(false){
}
Run Code Online (Sandbox Code Playgroud)
构造函数用于名为NetworkManager的类,它使用初始化列表初始化其成员.发生的事情在概念上(如果不完全准确):
NetworkManager :: NetworkManager() {
create "empty" NetWorkManager object
initialise its m_Thread with zero
set its m_Continue to be true
set its m_Init to be false
}
Run Code Online (Sandbox Code Playgroud)
然后使用构造函数创建一个完全初始化的对象:
NetworkManager manager;
Run Code Online (Sandbox Code Playgroud)
像这样的初始化优于构造函数体中的赋值,原因如下: