タグ

C++1yに関するiwadonのブックマーク (7)

  • C++14 のラムダ式 完全解説 前編 - 野良C++erの雑記帳

    C++14 の Committee Draft が公開された. C++14 は基的には C++11 のマイナーバージョンアップであるが,バグフィックスのみを行っている訳ではなく, C++11 の時点で微妙に使いにくかった機能,特にラムダ式については,大きな機能追加が行われている. そこで, blog では,このエントリから数回に分けて, C++14 のラムダ式について説明してみることにする. 拙い文章になるかとは思うが,読者の理解の助けになれば幸いである. なお,これらの記事を書くにあたって,読者に対して C++11 のラムダ式に対する知識を要求しないように心がけたが, もしかしたら,説明不十分であり,分かりにくい部分があるかもしれない. そのような場合には, の虫: lambda 完全解説 等, C++11 のラムダについて書かれた記事は多いので, それらの記事を読んでみることを

    C++14 のラムダ式 完全解説 前編 - 野良C++erの雑記帳
  • C++1y 文字列のsplit - Faith and Brave - C++で遊ぼう

    N3593 std::split(): An algorithm for splitting strings 文字列を、指定した区切り文字で分割するsplit()関数が提案されています。 // 文字列をカンマで分割する vector<string_view> v { split("a,b,c", ",") }; // v == {"a", "b", "c"} split()関数の戻り値は、今のところstring_viewのなんらかのRangeが返される、ということで考えられています。 string_viewと、コンテナのRangeを受け取るコンストラクタ追加とセットで提案されています。 区切り文字を指定する方法としては、以下の3つのクラスを提供することが考えられています: char_delimiter : 1文字で区切り文字を指定する literal_delimiter : 区切り文字列を

    C++1y 文字列のsplit - Faith and Brave - C++で遊ぼう
    iwadon
    iwadon 2013/04/10
  • C++1y string_view - Faith and Brave - C++で遊ぼう

    N3069 string_view: a non-owning reference to a string, revision 3 Boost 1.53.0で入ったstring_refと同じく、所有権を持たない文字列クラスの提案。 このクラスは、char配列に対してsubstr()やfind()といったメンバ関数を、stringへの変換コストなしに呼び出すのに使用できます。 const char s[] = "Hello World"; // char配列の部分文字列を取得 string_view view = string_view(s).substr(6, 5); for_each(view.begin(), view.end(), [](char c) { cout << c; }); // 「World」が出力される string_viewはbasic_string_view型のt

    C++1y string_view - Faith and Brave - C++で遊ぼう
  • C++1y コルーチンの提案 - Faith and Brave - C++で遊ぼう

    A proposal to add coroutines to C++ Another proposal to add coroutines to C++11 今現在、コルーチンの提案が2つ議論されています。 1つ目は、Boost.Coroutine作者であるOliverさんが提案している、ライブラリのみで完結するそのままBoost.Coroutineな仕様。 こちらで「スレッドローカルは、この提案のスコープ外だ」とOliverさんが発言したところ、謎の日Ai Azumaさんがツッコミを入れてます。どうやら、GSoCで昔実装されたBoost.Coroutineのスレッドローカル関係のドキュメントを、Oliverさんが読んでなかった模様。 2つ目は、C#のようにyieldキーワードを導入する半言語、半ライブラリの提案。 どちらも、スタック消費型のコルーチンですね。スタックの自動伸長も検討

    C++1y コルーチンの提案 - Faith and Brave - C++で遊ぼう
  • C++1y 多相アロケータの提案 - Faith and Brave - C++で遊ぼう

    N3525 Polymorphic Allocators C++11現在の標準アロケータであるstd::allocatorは、コンパイル時にアロケータが管理する型を決定するから使いにくい。なのでアロケータにType Erasureを使ってインタフェースを改善しよう、というのがこの提案。 具体的には、polymorphic_allocatorとmemory_resourceという、大きく2つのクラスを用意する。使い方: // 固定サイズアロケータ。 // 抽象クラスであるmemory_resourceを継承して実装する class FixedBufferResource : public memory_resource { void *m_next_alloc; std::size_t m_remaining; public: FixedBufferResource(void *buffer

    C++1y 多相アロケータの提案 - Faith and Brave - C++で遊ぼう
  • Microsoft が C++11 準拠を拡大した新コンパイラを発表

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    Microsoft が C++11 準拠を拡大した新コンパイラを発表
    iwadon
    iwadon 2012/11/08
    『2017 年のリリースが予定される C++17』
  • C++11の次 - Faith and Brave - C++で遊ぼう

    Post-Kona Mailing and More Libraries The view from C++ Standard meeting Feb 2012 中の人(cpp-netlib作者、GoogleのDeanさん)がブログに書いたのでここにも書いちゃいますが、C++11の次はC++17となりそうです(仮称はC++1y)。これは小規模なアップデートの予定。さらに2022年あたりに大きなアップデートを予定してます。 標準化は5年周期で行うのが通常らしいのでその関係でこの期間みたいですね。 ライブラリの追加は言語の標準化とは別にリリースされることになるかもしれません。 追記: zakさんがHerb Sutterのブログを翻訳してくれました。 出張報告書:2012/2 C++ Standard Meeting

    C++11の次 - Faith and Brave - C++で遊ぼう
    iwadon
    iwadon 2012/03/07
    次が出るまでC++使ってるのかな…
  • 1