タグ

stlに関するneumannのブックマーク (17)

  • C++ の string と vector の reserve() の挙動 - bkブログ

    C++ の string と vector の reserve() の挙動 C++ の string と vector には前もって容量を確保するための reserve() というメンバ関数があります。何気なく使っていた関数ですが最近になって興味深い挙動に気づきました。 reserve() の基 string と vector の reserve() は前もって容量 (capacity) を確保しておくためのメンバ関数です。前もって容量を確保 (reserve) しておけば、データの追加時に発生する再割り当て (reallocation) を防ぐことができ、効率的です。 たとえば、何もしないで文字列に 1,000文字追加した場合、(内部的に倍々で容量を増やしていくため)10回程度の再割り当てが発生しますが、 s.reserve(1000) のように容量を確保しておけば 1回の割り当て (

  • C++テンプレートでFizzBuzz - おびなたん☆

    これは、1月20日に北海道にて行われた日野望の会で披露したネタのまとめと解説のエントリーです。 そもそも こんなしょーもないネタを思いついたのは、このブログの昨年の検索キーワードトップ3が C++ FizzBuzz テンプレート だったから。それぞれのキーワードについては、 C++ - Wikipedia Fizz Buzz - Wikipedia テンプレート(プログラミング)- Wikipedia あたりを見てちょうだい。 特に、会場には「テンプレートって知らなーい」って人が2,3人いたのでテンプレートについてちゃんと説明したかったのですが、いかんせん時間が足りなすぎでした。テンプレートをまじめに語るとが一冊書けてしまうので、端折りました。当然、ここでも端折ります。 上述のリンク先とかを見るか、テンプレートをまじめに語ったを一冊読んでくだせえ。 とりあえず、おいらのFizzBuz

    C++テンプレートでFizzBuzz - おびなたん☆
  • MFCとSTLと文字列 - 記録(e_c_e_t)

    あるいは、CStringとstd::stringとchar * で、いつもCString → char * → std::stringな変換で迷うのでメモを残す CString から char * への変換 CString str = "いろはにほへと"; char * p = new char[str.GetLength() + 1]; strcpy(p,str); delete [] p;char * から CStringへの変換 char a[6] = "abcde"; CString cstrA; cstrA = a;std::stringからchar *への変換 std::string strA = "abcdefg"; char a[] = strA.c_str(); // 末尾に0x00の挿入されたchar *として使えるchar * からstd::stringへの変換 ch

    MFCとSTLと文字列 - 記録(e_c_e_t)
    neumann
    neumann 2008/07/15
    CString → char * → std::string
  • http://smdn.invisiblefulmoon.net/ikimasshoy/cpp/valarray1.html

    neumann
    neumann 2008/07/12
    valarray
  • Programming TIPs編

    ホーム < ゲームつくろー! < Programming TIPs編 Programming TIPs編 細かいところです(^-^) その1 GetGlyphOutline関数のフォント位置 その2 WinMain関数からメインウィンドウハンドルを手に入れるまでのおさらい その3 クラスのメンバ変数のオフセット値を取得してしまおう! その4 ここまでできる超極短Windows基盤プログラム その5 ここまでできる超極短DirectX基盤プログラム その6 HTML Help Workshopでヘルプファイルを作ろう! 2006. 9. 8 その7 メモリリークの検出方法 2006. 11. 18 その8 STLで日語ファイルが開けない時の対処法 2006. 12. 3 その9 d3d9types.hのwarning C4819「Unicodeに云々」の回避方法 2007. 3. 8 その

  • STL Algorithm 詳解

    STLのページに戻る STL Algorithm 詳解 Index 今のところリファレンスに毛が生えた程度ですが。 ところどころ(1/4くらい)例が抜けていたりします(あまり面白い例が思いつかなくて)。 '99 9/26 集合、最大・最小、順列、コピー追加。これでとりあえずalgorithmは全部。あとは例や相互参照リンクを付け加えていくだけ。 2000年10月16日 いろいろと修正 目次 検索を行うアルゴリズム 検索アルゴリズム一覧 ある値を持つ要素を検索する。- find() 条件を満たす要素を検索する。- find_if() 同じ値が連続している箇所を探す。- adjacent_find() ある複数の要素いずれかと一致する要素を検索する。- find_first_of() ある複数の要素いずれかに対して条件を満たす要素を検索する。- find_first_of() 一番最後に見

  • 目指せプログラマー!

    目指せプログラマー!にようこそ。 当サイトはこちらに引っ越しました。 お手数をおかけしますが、上記サイトへご移動くださいませ。

    neumann
    neumann 2008/07/10
  • STLアルゴリズム練習帳 by iijima

    ホームページ | MFC雑技団 STLアルゴリズム練習帳 since 2004.11.23, by iijima C++言語のSTLで提供されるアルゴリズムの基的な使い方に関する例題集です. コンテンツの追加・更新は不定期です.気長におつきあい下さい. はじめにお読み下さい [1]テンプレート,関数オブジェクトに関する基礎知識があり,vector, listなどのSTLコンテナクラスを使った経験があることを前提とします. [2]STLを使うのが必ずしも最善ではないような題材でも,無理やりSTLを使った例題とする場合もあります.あくまでもSTLを使ったプログラミングの練習用であり,コーディングスタイルとしての良し悪しは別問題だとご理解ください. [3]説明,コメントは簡潔かつ最小限のものとしますので,コードそのものから意味を読みとって下さい. [4]ご意見,ご要望はメールで

  • Schemeを作ろう VAFXImg など

    プロフィール ときどきこっそり更新。 僭越ながら自己紹介をば。投げやりですが。 平山直之/白浜青雪 生年月日 S48/04/11 出身校 早稲田大学第一文学部卒(6年を要す) 職業 プログラマ(ゲーム) 使える言語 C++/C LISP(scheme) (Object)Pascal perl/sed/awk BASIC アセンブラ 実際に経験があるのはこんなものかな? 結構言語オタクなので頭でだけ知ってるものは多数。 語らせるとウルサいこと バスケ・サッカーの戦術(トラウマのせい) 漫画ゲームの評論 他のアトリビュート 著書があるがウソ書いちゃったので忘れたい。 プログラマ的生い立ち 小学生のころ 合理主義が周囲のものどもに受け入れられなかったらしく、結構いじめられた。今にして思えばいじめられて当然だが。 剣道と野球をやってた。どっちもあまりまじめにはやってない。 小学生の頃はパソピア/

  • STL のソートのサンプル-Granzchesta's ぷち日常天国

    neumann
    neumann 2008/07/09
    ソート
  • C++におけるデータのソート方法の比較:CodeZine

    はじめに この記事の目的は、「C++のSTLにはデータをソートする方法がいくつか存在するが、ソート処理を簡単に、かつ効率のよいコードはどれか…」を調べることです。 ここでは、自前のソートアルゴリズムを作って速度を比較したり、既存のソートアルゴリズムを最適化するといったことは目的としません。公開されているSTLをありのままの姿で計測します。コードの保守性や移植性、可読性を考慮して「いたって普通」な書き方が一番メリットが受けられると考えていますし、より多くの人に恩恵をもたらすと考えるからです。 自前のソートアルゴリズムの構築や、既存のアルゴリズムの最適化は、可読性や移植性を悪くするため、得られるメリット(高速処理による時間)よりもデメリットが大きいと考えているのです。よって、ここで検証するコードは「いたって普通」な書き方であり、可読性を重視した書き方になります。 自前でソートアルゴリズムの構築

    neumann
    neumann 2008/07/09
    アルゴリズム ソート
  • C/C++ Technical Documents

    C++ 寄稿記事 επιστημη 氏から寄稿していただいた、開発者の方々にお役に立つテクニカルドキュメントです。Articles、References、Miscelaneousに分かれて説明しています。初心者の方からプロの方まで役に立つ読み物と資料集です。是非、開発のお役にお立て下さい。 Articles: 読み物 References: 資料集 Miscelaneous: 番外編

    neumann
    neumann 2008/02/16
  • STL超入門

    Last update 1999/08/07 STL超入門 (C)平山直之 無断転載は禁止、リンクはフリー 誤字脱字の指摘は歓迎 はじめに STLの知名度が意外と低いので、啓蒙のためにSTL入門を書くことにします。普段双方向リンクリストや動的配列のコードを書くのに飽きている人は、読んでみてください。絶対使ったほうがラクですから。 こんな人が対象 STLはC++の「テンプレート」という機能を使っていますので、普段C/C++コンパイラをCコンパイラとして使ってる人も、C++コンパイラとして使わなければなりません。STLをただ使うだけなら大して難しくはないので、C++をbetter Cとして使うのもよいかと思います。これ以後もそのような前提で説明します。よく分からないことがあったら掲示板で質問してください。 ※要するにCが解っている人向け※ STLの目的 STLとは、動的配列や双方向リンクリスト

  • 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

    neumann
    neumann 2006/07/26
    えぴすてーめー
  • STLのページ

    角のページへ戻る STL(Standard Template Library) C++の標準テンプレートライブラリ、STLのページです。 2003/6/7 コンテナ全ページ標準に合わせて修正 目次(と予定) 更新履歴 はじめに STLとは? '99 11/07 作成 その前にC++で知っておかなければならないこと 馴染みがない(かもしれない)単語 '99 9/23 わずかに修正 テンプレート(template<>) 2001 1/31 更新 環境 '99 2/20 VCでSGI_STLを使う、BeOS、egcs等 使い方 イテレータ(反復子)の使い方 '99 6/19 更新 関数オブジェクトの使い方 '99 7/4 mem_fun()の使い方追加 早見表 STLで使う主なクラス '99 6/13 各クラスの説明、ヘッダをまとめた STLで使われる名前 '99 6/13 微妙に更

  • C++ STL | ++C++; // 未確認飛行 C

    C++ STL に関する説明

    C++ STL | ++C++; // 未確認飛行 C
    neumann
    neumann 2005/06/19
  • コンテナ(後編)

    (このコンテンツはメールマガジンの STL & iostream 入門に手を加えたものです。「 STL と iostream が使えるかのチェック」等はメールマガジンの方のページをご覧ください) 今回はコンテナクラスの std::set と std::multiset を紹介します。 このふたつのクラスと、次次回紹介する std::map と std::multimap はこれまでのコンテナクラスとは値の格納方法が違います。この4つのクラスは「2分木」という方法で値を格納します。また、 std::set, std::multiset, std::map, std::multimap の4つのコンテナクラスを「連想コンテナ」と呼びます。 std::vector などは「1列に並んだデータ」をイメージするものでした。 std::set などは「2分木」という規則に則ってデータを格納します。これ

    neumann
    neumann 2005/06/03
  • 1