タグ

programmingとC++に関するkosakiのブックマーク (8)

  • Variadicとは何ぞや

    C++0xには、Variadic templatesなるものが存在する。あえて訳すとしたら、可変テンプレートか、可変引数テンプレートあたりだろう。 この引数には、仮引数や実引数のような、厳密な区別はいらないだろう。 しかし、Variadicという単語は、どこから来たのだろう。意味は分かる。variableから来ているに違いない。意味はわかるが、念のため、辞書で確認しておこう。 載っていない。辞書に載っていないとはどういう事だろう。variadicは、プログラミングでは、非常に有名な言葉だ。これが載っていないとは解せない。 -icというのは、ofとかlikeという意味の接尾語である。日語にも、~的という都合のいい接尾語がある。では、dはどこから来たのか。単に発音上の都合なのだろうか。 さっぱり分からなかったので、ネイティブに聞いた。どうやら、variable + -ad + -ic らしい

  • C++0x基礎文法最速マスター - Faith and Brave - C++で遊ぼう

    C++0xになると、C++03でごちゃごちゃした部分がだいぶ すっきり書けるようになるので、C++0xでの入門はこんな感じになるよー、 という気持ちで書きました。 1. Hello World C++0xでの入出力には、IOStreamというものを使用します。 <<演算子でどんどんつないでいきます。 以下のプログラムの読み方は 「標準出力(cout)に"Hello World"という文字列と、改行(endl)を出力する」 です。 #include <iostream> int main() { std::cout << "Hello World" << std::endl; return 0; } Hello World coutとendlを使用するには、 #include <iostream> のように、という標準ライブラリのファイルを読み込む必要があります。 2. コメント 行コメント

    C++0x基礎文法最速マスター - Faith and Brave - C++で遊ぼう
  • 次期C++に導入されるメモリバリアについて解説してみる - yamasaのネタ帳

    前のエントリで次期C++標準(通称C++0x)にatomic型とメモリバリアが導入されるという話をしました。今回はそのC++での実装について、もう少し深く追いかけてみます。 スライド資料では「atomic操作 + acquire/releaseバリア」が基であると書きましたが、実際に次期C++に導入される予定のatomic APIは、もう少し複雑な仕様になっています。一番の違いは、メモリバリアの種類が増えていることです。 次期C++標準の現在のドラフトでは、メモリバリアの種類を表すenum型の定義は以下のようになっています。 namespace std { typedef enum memory_order { memory_order_relaxed, memory_order_consume, memory_order_acquire, memory_order_release, m

    次期C++に導入されるメモリバリアについて解説してみる - yamasaのネタ帳
  • 本の虫: C++0xの新機能のリスト

    どうやら、C++0xのを執筆することになった。 ふと思えば、今まで一度も、C++0xの新機能がどのくらいあるのかということを考えたことがなかった。規格の変更は、もちろん大量にあるのだが、その中で、特に知っておくべき変更や追加というのは、どのくらいあるのか。整理するために、リストアップしてみた。このリストに載っていない機能や、既存の規格に対する変更で、特にユーザーも知っておくべきものがあれば、知らせて欲しい。 C++0xはまだドラフト段階だが、確実にこれは大きく変わらないだろうという機能は、かなりある。逆に、これはちょっとまだ分からないという機能もある。 言語機能 Rvalue Reference auto delctype static_assert Template Aliases extern template Variadic Templates Initializer lists

  • 変電工 - Google C++スタイルガイド日本語訳

  • Visual C++ の今後 - Faith and Brave - C++で遊ぼう

    VC++開発チームのブログで重大な発表がありました。 ・Announcing a major MFC update plus TR1 support ・Quick Tour Of New MFC Functionality Herb Sutterのブログでも紹介されています。 ・Visual C++ Announcements in Barcelona: TR1 and MFC ・Visual C++ Libraries update ・Visual C++ Libraries update(日語訳記事) VC++9.0(Visual Studio 2008)から、MFCが大幅に拡張されるそうです。 Office 2007のリボンコントロールがネイティブなMFCで使えることが 大きく取り上げられていますが、大きく違うのは開発ターゲットの拡張です。 従来のデスクトップアプリケーションだけで

    Visual C++ の今後 - Faith and Brave - C++で遊ぼう
  • 間違ったコードは間違って見えるようにする - The Joel on Software Translation Project

    Joel Spolsky / 青木靖 訳 2005年5月11日 水曜 私が最初の当の仕事をはじめたのは1983年9月に遡る。それはオラニムというイスラエルの大きな製パン工場で、16台の飛行機ほどもある巨大なオーブンで、毎晩10万個のパンが作られていた。 はじめて工場に入った時、そのあまりの汚さに信じられない思いだった。オーブンの側面は黄ばんでいるし、機械は錆びていて、そこらじゅうが油だらけだった。 「いつもこんなに汚いの?」と私は聞いてみた。 「なんだって? なんの話をしてるんだ?」とマネージャが答えた。「掃除したばかりだから、今が一番きれいな状態なんだ」 なんてこった。 毎朝の工場の清掃を何ヶ月か続けて、ようやく彼らの言っていたことが理解できるようになった。パン工場では、きれいというのは機械にパン生地が付いてないことを言うのだ。きれいというのは、ゴミ箱に発酵したパン生地が入ってないこと

    kosaki
    kosaki 2007/03/17
    アプリケーションハンガリアンとシステムハンガリアン
  • g++ の -fthreadsafe-statics ってオプション知ってます? - memologue

    古来より、関数スコープの静的なオブジェクトを作るのは危険 void foo() { static CBar bar; // こんなの とされています。foo()が初めて呼ばれたタイミングでbarのコンストラクタが走るわけですが(C++規格でそう決まっている)、foo()の初回呼び出しが2つのスレッドでほぼ同時に行われると、barのコンストラクタが複数回走ってしまったりと、不可解な動作をすることが知られています。 参考サイト: http://blogs.msdn.com/oldnewthing/archive/2004/03/08/85901.aspx (引用するの何度目だろ) ところが、最近のg++には -fthreadsafe-statics っていうオプションがあって、この初回のコンストラクタ呼びをスレッドセーフに行ってくれるようになりました。手元のgcc3.4.3ではデフォルトでon

    g++ の -fthreadsafe-statics ってオプション知ってます? - memologue
  • 1