タグ

開発とCに関するmohnoのブックマーク (1)

  • 非推奨だった bool 型に対するインクリメント演算子を削除 [P0002R1] - cpprefjp C++日本語リファレンス

    このページはC++17に採用された言語機能の変更を解説しています。 のちのC++規格でさらに変更される場合があるため関連項目を参照してください。 概要 C++17ではbool型に対する前置および後置のoperator ++を削除する。 bool型に対する前置および後置のoperator ++とはC++98の時点で非推奨になっていた機能である。 具体的にどのような働きをするのかというと、以下のように値をtrueに書き換える機能をもつ。 #include <iostream> int main() { bool b = false; const bool b1 = ++b; std::cout << std::boolalpha << b1 << std::endl; // => true const bool b2 = ++b; std::cout << std::boolalpha <<

    mohno
    mohno 2017/07/18
    「これが1になるまでif文の中の式は実行されない」←いや待て、0以外なら負の値でも実行される。だいたい「最初だけ」を判別するのに8ビット整数使うとか、普通のバグ。最後のif文は「if(flag)std:cout << ',';flag=1;」でOK。
  • 1