2011-11-17 あと必要なのは Rvalue refs for *this と Delegating ctors かな.
GCC-4.7 に Alias declarations (Template aliases) が実装されていた
いつの間にか GCC-4.7 に Alias declarations (Template aliases) が実装されていたようです:
http://gcc.gnu.org/projects/cxx0x.html
これにより,
// my_vector<T> を std::vector<T, my_allocator<T>> の代わりに使える // 関数テンプレート等で型推論させられない弱点はあるが template< class T > using my_vector = std::vector<T, my_allocator<T>>; // テンプレートではない普通の typedef の代わりとしても使える using vec_t = my_vector<int>; // typedef my_vector<int> vec_t; と同じ // 関数等の ややこしい型を typedef する場合に重宝する using function_t = void ( vec_t const& ); // typedef void function_t( vec_t const& ) と同じ
とか書けるようになります( gcc-4.7-20111112 で確認).
GCC-4.7 には Non-static data member initializers や Explicit virtual overrides (final, override) も導入されたので,
今までに比べて地味に(しかし確実に)コードが書きやすくなっていて,素敵.
トラックバック - http://d.hatena.ne.jp/gintenlabo/20111117/1321529448
リンク元
- 22 http://t.co/h8vWYtqF
- 12 http://www.google.co.jp/url?sa=t&rct=j&q=gcc 4.7&source=web&cd=6&ved=0CE4QFjAF&url=http://d.hatena.ne.jp/gintenlabo/20111117/1321529448&ei=y5THTo3CPKbomAXy0-T5Dw&usg=AFQjCNH72Zhq6AVY8tnwZC8J3Cs_8F3C5A
- 6 http://d.hatena.ne.jp/meryngii/20111226/1324901321
- 6 http://htn.to/dxTvh9
- 5 http://d.hatena.ne.jp/tt_clown/20111222/cpp11_advent_calendar
- 5 http://www.google.co.jp/url?sa=t&rct=j&q=template aliases&source=web&cd=2&ved=0CCcQFjAB&url=http://d.hatena.ne.jp/gintenlabo/20111117/1321529448&ei=jXrITtjOMMjJmQWN8uQR&usg=AFQjCNH72Zhq6AVY8tnwZC8J3Cs_8F3C5A
- 4 http://www.google.co.jp/url?sa=t&rct=j&q=乱数生成アルゴリズム&source=web&cd=2&ved=0CC4QFjAB&url=http://d.hatena.ne.jp/gintenlabo/20100925/1285432088&ei=eq7FTv7BItDEmQW7w-GpC
- 4 http://www.google.co.jp/url?sa=t&rct=j&q=gcc template&source=web&cd=5&ved=0CEMQFjAE&url=http://d.hatena.ne.jp/gintenlabo/20111117/1321529448&ei=X27NTo3XJufImQXh96WoDQ&usg=AFQjCNH72Zhq6AVY8tnwZC8J3Cs_8F3C5A&sig2=a8_5_YEjXhngfWfaTqGTBw
- 3 http://longurl.org
- 3 http://search.yahoo.co.jp/search?p=#include+<utility>&search.x=1&fr=top_ga1_sa&tid=top_ga1_sa&ei=UTF-8&aq=&oq=
