【初心者歓迎】C/C++室 Ver.72【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0120デフォルトの名無しさん
2010/03/19(金) 23:07:22ぐぐってみてこのページを見たのですが
ttp://ja.wikibooks.org/wiki/More_C%2B%2B_Idioms/%E5%AE%89%E5%85%A8%E3%81%AA_bool(Safe_bool)
operator bool()ではなくoperator bool_type() constでもよいのでしょうか?
で、operator bool_type() constの挙動は
ok_がtrueであればthis_type_does_not_support_comparisons()のアドレスを返し、0以外の値なのでtrueと動作する
falseならば0をかえしfalseとなる
例文の
if (t2 == t1)や
if (t1 < 0)
のばあいはprivate関数のアドレスを比較するのでコンパイルエラーをはく
ということでしょうか
この場合なぜメンバ関数のアドレスを返り値とするのでしょうか?
質問続きで申し訳ありませんがよろしくお願いします
■ このスレッドは過去ログ倉庫に格納されています