Some background The first programming language I truly loved was C. It took a while to get there: As a child, I started with Z80 assembly on the venerable ZX Spectrum. Those were the days when you actually owned your computer, and you did not need permission from Apple, Google, or Microsoft, or anyone else to write a program. I learned about paging memory blocks in an out of the CPU’s address spac
Last week I made the case that Standard C++ offers both productivity and performance and showed how C++ can be just as concise and elegant as C# and indeed more so. But I didn’t really address performance so let’s do so now. It’s trendy today to refer to your platform or framework of choice as being native. Everyone’s native these days. Even managed code is native. It wasn’t long ago that such a s
Between 1992 and 2005, I published five books with Addison-Wesley. When I started writing what became Effective Modern C++ (EMC++), I assumed I'd publish with them again. That didn't happen. Instead, I worked with O'Reilly. Several people have asked about my change in publishers. In this post, I offer background information for my decision to change. The decision itself will be part of a later pos
c++, c++11, constant-expression, stateful meta-programming Disclaimer: The technique described in this post is primarily meant as "just another clever hack, diving into the dark corners of C++". I do not recommend anyone to incorporate the contents of this post into production code without considering its caveats. Note: I have not had time to review the contents of this post as much as I have been
« Protocol Buffers を利用した RPC、gRPC を golang から試してみた。 | Main | Vim 上のファイラを NERDTree から dirvish に乗り換えた。 » 先日、Google が開発しているリモートプロシージャコール、gRPC を golang から使うチュートリアルを書きましたが Big Sky :: Protocol Buffers を利用した RPC、gRPC を golang から試してみた。 http://mattn.kaoriya.net/software/lang/go/20150227144125.htm 今日は ruby と C++ から触ってみたいと思います。はじめに ruby の方ですが、Ruby 2.2.0 でビルドする事が出来ません。どうしても Ruby 2.2.0 から試したい人は、以下の PR にあるパッチを適
https://gcc.gnu.org/gcc-5/changes.html 網羅的ではなく、気になったものだけ抽出して書いています。 C++11、C++14関係の対応状況は、cpprefjpサイトにもほぼ反映しました。 C++14を全実装 変数テンプレート 宣言時のメンバ初期化を持つ型の集成体初期化を許可 constexprの制限緩和 サイズ付きデアロケーション -std=c++14オプションが使えるようになる。旧-std=c++1yオプションは非推奨。 C++11周りのライブラリサポート改善 std::listのsize()メンバ関数が、デフォルトでO(1)になる std::dequeとstd::vector<bool>に、ステートフルアロケータのサポートを追加。 iostreamのクラスに、ムーブとswapのサポートを追加。 std::alignとstd::aligned_union
C++1zには、N3994: Tarse Range-based forが提案されていた。これは、Range-based forで型を書かずにすむようになる小粒な新機能だ。 任意のコンテナーを受け取って、その要素をすべて標準出力に出力する関数テンプレートを書くとする。これは以下のように書ける。 template < typename Container > void print( Container const & c ) { for ( typename Container::value_type & elem : c ) std::cout << elem << '\n' ; } いちいち型を書くのが面倒だ。これにはautoを使えばよい。 template < typename Container > void print( Container const & c ) { for (
Introducing Proxygen, Facebook’s C++ HTTP framework We are excited to announce the release of Proxygen, a collection of C++ HTTP libraries, including an easy-to-use HTTP server. In addition to HTTP/1.1, Proxygen (rhymes with "oxygen") supports SPDY/3 and SPDY/3.1. We are also iterating and developing support for HTTP/2. Proxygen is not designed to replace Apache or nginx — those projects focus on
Try Red Hat products and technologies without setup or configuration fees for 30 days with this shared Openshift and Kubernetes cluster.
Sierra: A SIMD Extension for C++Nowadays, SIMD hardware is omnipresent in computers. Nonetheless, many software projects make hardly use of SIMD instructions: Applications are usually written in general-purpose languages like C++. However, general-purpose languages only provide poor abstractions for SIMD programming enforcing an error-prone, assembly-like programming style. Sierra combines the ful
We have C++14! - Standard C++ C++14のDIS(Draft International Standard)に対する各国の投票が行われ、満場一致で承認されました。各国から(主に日本から)のコメントによる文面の細かな修正が残っていますが、その作業が完了次第、ISO/IEC 14882:2014(E) Programming Language C++、別名C++14の規格が発行されます。 C++14は、2011年に発行されたC++11に対するマイナーバージョンアップです。小さな機能追加、および文面のバグ修正が含まれます。 C++14の更新内容は、以下のエントリにまとめてあります: C++14の言語拡張まとめ コンパイラの実装状況(言語機能) 次はC++17です。そちらはメジャーバージョンアップになる予定で、その議論はすでに始まっています。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く