タグ

2006年10月9日のブックマーク (4件)

  • Standard Template Library プログラミング on the Web

    1985年、AT&TのBjarne StroustrupがC++をこの世に送り出しました。その後C++は様々な拡張を繰り返しながら進化してきました。 1991年、ISOはC++の国際標準(standard C++)を定める作業を開始しました。標準C++の最終草案は1997年にISO C++標準化委員会に承認されました。 標準C++が規定するのは言語仕様だけなく、C++標準ライブラリも規格の中で明確に定められています。それまでC++のライブラリといえばiostreamぐらいのものでしたし、それもあくまで"事実上の標準"でしかありませんでした。 そしてそのC++標準ライブラリの一部として組み入れられたのがSTL(Standard Template Library)です。すなわちSTLは標準C++の仕様の一部ということです。 僕がSTLを知ったのは1995年、いくつかのコンパイラがtemplat

  • いけてないぞ、VCのSTL!

    このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。

  • VC++ / MFC TIPS

    VC++ / MFC 覚書 去年(2000年)あたりから、仕事の上で、どうしても Windows プログラミングを せざるをえなくなってしまった。やり始めてみると、 意外に面白いということが分かったのだが、いかんせん、 Windows プログラミングの頻度はそれほど高くない。 しばらくすると、やり方をすっかり忘れてしまったりする。 そこで、備忘録として、MSDN ライブラリや書籍類から得た情報を、 少しずつまとめていこうと思う。 VC++ 定義済みマクロ (2001-03-13) プリコンパイル済みヘッダー (2001-12-13) VC++ の困った癖 (2001-12-13) ドキュメント型 (2001-03-14) VC++ マクロシンボル MSDN ライブラリでは、「組み込みマクロ」、 「/U、/u (定義済みマクロ シンボルの無効化)」あるいは、 「Using the SDK H

  • C++ Labyrinth

    VC6 の関数テンプレートのバグにハマる またしても VC++ 6 のワナにハメられてしまった。 今回は、次のような関数テンプレートを定義し、 template<int N> void foo() { cout 次のような呼び出しを行った。 foo&lt1>(); foo&lt2>(); 当然、"1" と "2" が表示されることを期待したわけだが、結果は何と両方とも "2"。 どうやら VC6 では、 テンプレート引数だけを変えて関数テンプレートのインスタンスを複数作ることができないらしい。 こんな中途半端なことをされるくらいなら、いっそコンパイルエラーになって欲しかった。 そのほうがすぐに別のやり方に書き直せるし、不可解なバグに悩まずにすむ。 ちなみに、上の問題を回避するには、ファンクタ (関数オブジェクト) を使うのが常套手段。 template<int N> class Func