簡體   English   中英

在這段代碼中冒號“:”的含義和用法是什么?

[英]What's meaning and usage of the colon “:” in this chunk of code?

抱歉,標題含糊。 我正在做一個需要一些C ++知識的項目。 我不需要學習C ++,也不必花時間閱讀一本書。 所以我希望有人能給我一個很好的起點來進行查找。

這是代碼:

TurtlebotTeleop::TurtlebotTeleop(): ph_("~"), linear_(1),angular_(0){
   ph_.param("axis_linear", linear_, linear_);
   ph_.param("axis_angular", angular_, angular_);
   ph_.param("axis_deadman", deadman_axis_, deadman_axis_);
   ph_.param("scale_angular", a_scale_, a_scale_);
   ph_.param("scale_linear", l_scale_, l_scale_);
}

我知道這段代碼正在定義方法“ TurtlebotTeleop”。 但是在冒號“:”之后是什么?

非常感謝您的投入。

這是一個構造函數初始化列表。 它是用於初始化類的數據成員的語法。

“代碼塊”是TurtlebotTeleop的默認構造函數的TurtlebotTeleop :{之間是該類的某些數據成員的初始化。 一旦進入構造函數的主體(在{}之間),所有數據成員都將具有值,並且對它們執行的任何操作都是對現有實例的更改,而不是初始化。

該函數是您的類的構造函數,構造函數必須做的一件事就是初始化類的每個成員。

單個冒號后面的內容是用於初始化類成員的簡短語法。 因此,當此構造函數運行時,ph_將設置為“〜”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM