質問: > > struct Edge{ int to, cost; > > Edge(){} > > Edge(int to, int cost):to(to),cost(cost){} }; > > > これはどういった意味でしょうか? Edge(){}は関数でしょうか
回答: ***Edge(){}は関数でしょうか*** コンストラクタです。C++では、「戻り値型なし、関数名が型名と一緒」のメンバー関数宣言はコンストラクタとなります。`()`は引数無し、`{}`はコンストラクタ内での実際の処理が無いことを表しています。(次の行は引数ありのコンストラクタです。) ちゃんとした(?)C++のコードから入られたのなら見慣れないかもしれませんが、C++を基本から解説している書籍やサイトをご覧になってみれば、このような書き方になっているものがたくさん見つかるかと思います。 ご自身がどの程度までC++の知識を持ち合わせているのかご披露いただければ、もう少し何か付け足せるかもしれません。