- スレを勃てるまでもないC/C++の質問はここで 24 [転載禁止]©2ch.net
352 :デフォルトの名無しさん[]:2016/03/21(月) 10:46:27.54 ID:5Pe+8Vgq - enumに対して operator== と operator!= を定義する方法ってありますか?
visual studio 2015使ってますが 'operator==があいまいです'というエラーが出てしまいます。 コードはこんな感じにしています Moveがenum型です inline Move moveRaw(const Move m) { return Move(m & 0x03ffffff); } inline bool operator == (const Move m1, const Move m2) { return int(moveRaw(m1)) == int(moveRaw(m2)); } inline bool operator != (const Move m1, const Move m2) { return !(moveRaw(m1) == moveRaw(m2)); }
|
- スレを勃てるまでもないC/C++の質問はここで 24 [転載禁止]©2ch.net
356 :デフォルトの名無しさん[sage]:2016/03/21(月) 16:52:02.88 ID:5Pe+8Vgq - >>354
ほんとですね。ありがとうございます! ほかの原因を探してみます。
|
- スレを勃てるまでもないC/C++の質問はここで 24 [転載禁止]©2ch.net
357 :デフォルトの名無しさん[sage]:2016/03/21(月) 17:05:14.43 ID:5Pe+8Vgq - >>354のコードをコピペしてコンパイルしてみましたがやはり同じエラーが出ます
どうやらvisual studio 2015だと出てしまうようです
|
- スレを勃てるまでもないC/C++の質問はここで 24 [転載禁止]©2ch.net
359 :デフォルトの名無しさん[sage]:2016/03/21(月) 20:11:48.11 ID:5Pe+8Vgq - >>358
ありがとうございます。気が向いたらそちらに質問させていただきます とりあえずoperatorではなく関数で対応するようにしました。
|