ブックマーク / zenn.dev/reputeless (1)

  • [C++] bool 型を強くする YesNo クラス

    これは C++ Advent Calendar 2021 の参加記事です。 C++ のプログラムを少しだけ読みやすく、安全にするために作った便利クラス YesNo<T> と、それを簡単に使えるライブラリ siv::YesNo (Boost Software License 1.0) を公開します。このライブラリは Siv3D の API で長らく使われている類似のクラス s3d::YesNo<T> を、再利用しやすく切り出したものです。 1. よくある問題 bool 型の引数は、呼び出し側からは意味が分からなかったり、取り違えたりするおそれがあります。 void ToHex(int n, bool uppercase) { if (uppercase) std::cout << "uppercase\n"; else std::cout << "lowercase\n"; //... }

    [C++] bool 型を強くする YesNo クラス
  • 1