タグ

proposalとC++1yに関するUSAGI-WRPのブックマーク (4)

  • C++1y 多倍長整数 - Faith and Brave - C++で遊ぼう

    N3542 Proposal for Unbounded-Precision Integer Types C++1yに向けて提案されている多倍長整数クラス。 この提案では、固定精度整数クラスは含まれておらず、無限精度のintegerクラスのみが考えられています。 integer a = 123; // int型整数からの初期化 integer b{std::string("12345678901234567890")}; // 文字列からの初期化 // 出力 cout << a << endl; // 文字列への変換 string s = a.to_string(); 現状の提案の問題としては、アロケータが指定できないことや、ユーザー定義リテラルがないことなどが挙げられています。 提案してる人が違うこともあってか、Boost.Multiprecisionとはだいぶ設計が異なっています。

    C++1y 多倍長整数 - Faith and Brave - C++で遊ぼう
  • C++1y - optionalの提案 - Faith and Brave - C++で遊ぼう

    C++1yでは、boost::optionalをベースとしたクラスが提案されています(元々TR2で導入しようと考えられていた)。提案者は、Boost.Optional作者のFernando Cacciolaさん。 このクラスは、intだったら-1を無効値とし、ポインタだったらNULLを…といったプロジェクトの決め事による無効値ではなく、型で無効値を表現するのに使用します。 optional<int> x = 3; // 有効値を代入 x = nullopt; // 無効値にする この提案でのboost::optionalとの相違点は、大きなところでは以下になります: 無効値はnullopt。Boostはnone。 constexpr対応 入出力ストリームの演算子を提供しない emplaceによる構築。Boostではin_place()関数。 入出力ストリームを提供しないのは、現状その振る舞

    C++1y - optionalの提案 - Faith and Brave - C++で遊ぼう
    USAGI-WRP
    USAGI-WRP 2012/11/18
    [boost::optional][2012][Faith and Brave]
  • C++1y static if - Faith and Brave - C++で遊ぼう

    C++1yでは、D言語にもあるstatic ifが提案されています。 宣言と文が現れるあらゆるところで使えるようにしよう、ということで考えられいて、ユースケースもいろいろ考えられています。 まず、コンパイル時条件によって処理を呼び分ける基的な用途。 以下の、コンパイル時条件で分岐するような処理は、これまで関数オーバーロードでやっていました。 static if (sizeof(size_t) == 8) { // 64ビット版のコンパイルではこっち void fun(); } else { void gun(); } 次に、クラスの定数/型定義。 以下の階乗のような例は、これまで特殊化でやっていました。 template <unsigned long n> struct factorial { static if (n <= 1) { enum : unsigned long { val

    C++1y static if - Faith and Brave - C++で遊ぼう
  • 2012-10-25

    C++1yでは、boost::optionalをベースとしたクラスが提案されています(元々TR2で導入しようと考えられていた)。提案者は、Boost.Optional作者のFernando Cacciolaさん。 このクラスは、intだったら-1を無効値とし、ポインタだったらNULLを…といったプロジェクトの決め事による無効値ではなく、型で無効値を表現するのに使用します。 optional<int> x = 3; // 有効値を代入 x = nullopt; // 無効値にする この提案でのboost::optionalとの相違点は、大きなところでは以下になります: 無効値はnullopt。Boostはnone。 constexpr対応 入出力ストリームの演算子を提供しない emplaceによる構築。Boostではin_place()関数。 入出力ストリームを提供しないのは、現状その振る舞

    2012-10-25
    USAGI-WRP
    USAGI-WRP 2012/10/25
    [boost::optional][maybe monad][Faith and Brave]
  • 1