C++
1struct state { 2 int puzzle[9]; 3 int depth; 4 int cost; 5 bool operator>(const state &s) const { 6 return cost > s.cost; 7 } 8};
上記のコードにおける,boolのところをC言語で書きなおすとすればどのように書くことが出来ますでしょうか.
関数のような形をしていると思うのですが,booleanなのにreturnはintのcostとなっているのはなぜでしょうか.
宜しくお願いいたします.
operator > は比較演算子のオーバーロードで、C++ ではこれで 2 つの state s1, s2; を if (s1 < s2) 〜 のように比較できるようになりますが、C にはそんなものはないので普通の関数 (かマクロ) にするしかないでしょうね。
回答2件
あなたの回答
tips
プレビュー