-1

タイトルがあいまいでごめんなさい。私は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」を定義していることを私は知っています。しかし、コロン「:」の後のそれらのことは何ですか?

ご入力ありがとうございます。

4

2 に答える 2

3

コンストラクタ初期化リストです。これは、クラスのデータメンバーを初期化するための構文です。

「コードのチャンク」は、のデフォルトコンストラクターの定義ですTurtlebotTeleop:との間に続くのは{、そのクラスの一部のデータメンバーの初期化です。コンストラクターの本体(との間)に入る{と、}すべてのデータメンバーに値があり、それらに対して行うことは、初期化ではなく、既存のインスタンスへの変更です。

于 2012-09-22T16:27:30.807 に答える
0

この関数はクラスのコンストラクターであり、コンストラクターが実行する必要があることの1つは、クラスのすべてのメンバーを初期化することです。

単一のコロンの後にあるものは、クラスのメンバーを初期化するための短い構文です。したがって、このコンストラクターを実行すると、ph_は「〜」に設定されます。

于 2012-09-22T16:29:41.127 に答える