c++に関するnstaのブックマーク (37)

  • C++0xの言語拡張まとめ(※随時更新) - Faith and Brave - C++で遊ぼう

    C++0xの概要はこちら ・Angle bracket テンプレートの連続した山カッコの問題の解決 ・初期化子リスト ユーザー定義のクラスで配列のような初期化構文を実装可能になる ・Uniform initialization コンストラクタの構文と初期化子リストの構文が一様になる ・デリゲーティング・コンストラクタ コンストラクタから他のコンストラクタを呼び出せる ・auto 型推論 ・記憶クラス指定子としての auto の削除 autoキーワードの意味が変更になるため、下位互換がなくなる ・decltype sizeofの型版 ・Template Aliases テンプレートを使用して型の別名を付けることができる。いわゆるtemplate typedef ・拡張sizeof 構造体/クラスのメンバをインスタンス化せずにsizeofすることが可能になる ・nullptr ヌルポインタを表

    C++0xの言語拡張まとめ(※随時更新) - Faith and Brave - C++で遊ぼう
  • AutotoolsでHello World! - mir the developer

    AutotoolsでHelloWorldをやってみたのでメモしておきます。GNU Autotoolsとはautoconf、automake、libtoolといったC/C++プログラムを容易にかつポータブルにビルド可能にするためのツール群の呼び名とのことです。 分かりやすく言うと、自分のプログラムを↓↓↓でビルド&インストールできるようにしてくれるすごい奴らということです。 ./configure make sudo make install上記コマンド実行時にはconfigureスクリプト、Makefileなどが活躍するわけですが、これらは大抵、プログラマの手作業で作られたファイルではありません。規模の大きなソフトウェアほどこういったファイルを手作業で作るのは無理なので、代わりにもっとプログラマに優しいAutotools用の入力ファイルを作って、そこから自動生成させるのが良いということにな

    AutotoolsでHello World! - mir the developer
    nsta
    nsta 2007/08/23
    GNU Autotoolsの使い方
  • うっそぉ~ん!

    目次 ホーム 連絡をする RSS Login Blog 利用状況 投稿数 - 1078 記事 - 2 コメント - 26219 トラックバック - 363 ニュース 著作とお薦めの品々は 著作とお薦めの品々は 東方熱帯林へ。 わんくま 東京勉強会#2 C++/CLI カクテル・レシピ 東京勉強会#3 template vs. generics 大阪勉強会#6 C++むかしばなし 東京勉強会#7 C++むかしばなし 東京勉強会#8 STL/CLRによるGeneric Programming TechEd 2007 @YOKOHAMA C++C++/CLI・C# 適材適所 東京勉強会#14 Making of BOF 東京勉強会#15 状態遷移 名古屋勉強会#2 WinUnit - お気楽お手軽UnitTest CodeZine Cで実現する「ぷちオブジェクト指向」 CUnitによるテスト駆

    nsta
    nsta 2007/08/22
    Ω ΩΩ < な、なんだってー /VC2005で for each ~ in が使えるらしい
  • C++アプリケーションの効率的なテスト手法(CppUnit編) ― @IT

    第2回 C++アプリケーションの効率的なテスト手法(CppUnit編):連載 C++開発者のための単体テスト入門(1/4 ページ) 連載目次 前回は単体テストの重要性を示し、従来のC/C++でのテスト手法であるprintf関数やassertマクロを使ったテストを紹介しました。この2つのテスト手法は開発環境(コンパイラとライブラリ)さえあれば利用でき、その使い方も簡単です。しかしながら、いずれも系統立てて、効率よくテストを行うには力不足の感が否めません。 今回は、Visual C++ 2005 Express Editionを含むVisual Studio 2005(以後、VS 2005)で利用できる代表的な単体テスト・フレームワーク(Unit Test Framework)の1つである「CppUnit」を紹介します。 ■単体テスト・フレームワークとは? 前回、「バグは早期発見が望ましい。早

    C++アプリケーションの効率的なテスト手法(CppUnit編) ― @IT
  • asio C++ library

    Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach.

    nsta
    nsta 2007/07/29
    boostと一緒に使うマルチプラットフォームなネットワークライブラリ
  • distutils with boost.python - おびなたん☆

    昨日のエントリのコメントにて、 nishio『とりあえずインストールしてみたけどなにがいいのかよくわかんない… bjamとかいう独自のビルドツールを使うせいで標準のdistutilが持っている機能(Windows用インストーラがコマンド1行で作れるとか)が使えなくなってしまっている気がする。』 (2007/06/11 12:33) earth2001y『bjamはboost自体をビルド、インストールするのに使うだけで、それ以後は関係ないよ。distuilも普通に使えるので、整理して新しいエントリに書きますね。』 (2007/06/11 18:46) って書いたので、Boostの準備からモジュールの作成、インストールまで、順を追って書き出してみますた。 Boostをインストール まず、Boostの準備。BoostのソースとbjamをBoostの配布元からとってくる。Boosy.Python

    nsta
    nsta 2007/06/16
    boostでPythonの拡張を作る
  • 西尾泰和のブログ @ Cybozu Labs: Python拡張の作り方

    いくつかの落とし穴をよければ意外と簡単だったので、 この文章を必要としている誰かのために整理してみることにします。 追記: おびなたのはてな日記 - distutils with boost.pythonで詳しく説明されているように、C++とBoostを使うともっと楽になるようです。近いうちに試してみます。 また、 Cybozu Developer Network: Python調査報告 (2006/10) によれば 「PEAKの setuptools は distutils の拡張で(中略)distutils の上位互換であるため、setuptools を使用しない理由はありません。積極的に使用しましょう。」とのことなのでこちらも試してみたいと思います。 Cのコードを用意する 書き換えるべき所を明確にするために、 [[MODULE_NAME]]というように表記しました。 同じ名前の括弧に

    nsta
    nsta 2007/06/07
    CでPython拡張を作る
  • ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き - - c/c++でsqliteを使う方法

    sqlite3をc/c++で使う方法についてメモ。 以前rubysqlite を使う方法 - ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き -でも書いたように、DBを使うアプリケーションは、通常はrubyなどのスクリプト言語で記述したほうが楽です。 でもc/c++からもデータベースを使えると非常に便利です。 公式なリファレンスマニュアル http://www.sqlite.org/capi3ref.htmlAPIの一覧があります インストール debian であれば libsqlite3-dev を入れるだけです. $ sudo apt-get update $ sudo apt-get install libsqlite3-dev sqlite3 のAPI よく使うAPIを列挙していきます Database への接続 データーベースとして、 hogehoge.db

    ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き - - c/c++でsqliteを使う方法
    nsta
    nsta 2007/04/18
  • IEコンポーネントの使い方 [VC++の使い方]

    IE4.0からIEコンポーネントを使えるようになりました。IEコンポーネントは、Donutなどの国産タブブラウザのほか、色々なアプリケーションで利用されています。 IEコンポーネントは、MFCのCHTMLViewを使えば簡単に作ることができますが、MFCを使いたくない場合もあります。この場合、ATLを選択するのが通常ですが、世の中のドキュメントの大半は ATL と AppWizard を組み合わせた使い方しか載っていません。ここでは、SDK的にIEコンポーネントを使う方法を取り上げます。 サンプルコードはこちら(35.9KB)(2002.12.15、プリコンパイル済みヘッダが見つからないエラーが出ないようにしました)。これをDLして解凍してください。詳細は、ソースファイルの中のコメント参照と言うことでお願いします。100行ほどのソースですので、ぜひ読んでみてください。 このサンプルでは、ダ

    nsta
    nsta 2007/02/15
    COMを使ってIEを操作する/HWND ⇒ IWebBrowser2 ⇒ IHTMLDocument2と取得可能
  • memologue - C/C++の定数の型の話, C90/C99の差分のびみょーな話

    Cのソースコードに m = 195; とか n = 0xffffffff; とか書いたときの定数(右辺)の型って、なんであるかご存じでしょうか? また、C90(1990年版のISO C言語規格)とC99(1999年版のそれ)ではその型が微妙に異なったりすることがあるんですが、ご存じでしょうか? さらには、お使いのマシンがILP32であるかLP64であるかLLP64であるかによっても、微妙に型が違ってきたりするんですが、それについてはどうでしょうか? えーもちろん、普段は「Uがついてなかったらint, Uがついてたらunsigned intジャネーノ?」くらいの理解でも殆ど不自由しないわけですが、詳細な理解がないとハマるケースも稀にあります。 私はというと、上に書いたような事は、C90/99の差違を除いてはだいたい理解しているつもりだったのですが、C90/99の差異について無頓着だったがため

    memologue - C/C++の定数の型の話, C90/C99の差分のびみょーな話
    nsta
    nsta 2007/02/06
    C90準拠のコンパイラ(C++含む)とC99準拠のコンパイラとでは整数型定数の値が変わる/ILP32・LP64なんて用語あるのはじめて知った
  • バベル案内

    Steve Yegge / 青木靖 訳 2004年9月 これは駆け足の言語案内だ — Amazon Developers Journalのために今月書いていたのだが、どうもこれを見苦しくないようにする方法を見つけられなかった・・・。 ひとつには、私はどうも粗野で口汚くなりがちで、オフィシャルな趣のあるAmazonの出版物に載せるのは不適切に思えた。それでかわりに誰も読まない自分のブログに押し込めてしまうことにした。読んでるのはあなたくらいのものだよ。どうも! もうひとつ言うと、これは当に書きかけのものであり、そこかしこの断片を集めたものでしかない。全然磨き上げられていない。これもブログエントリにする理由になっている。ブログなら別に良質である必要も完全である必要もない。単に私が今日考えたことというだけのものだ。ではお楽しみを! この駆け足の案内では、C、C++、Lisp、JavaPerl

    nsta
    nsta 2007/02/01
    クズ言語は死ねばいいのに
  • wxWidgets: Cross-Platform GUI Library

    wxWidgets is a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base. It has popular language bindings for Python, Ruby, Lua, Perl and several other languages, and unlike other cross-platform toolkits, wxWidgets gives applications a truly native look and feel because it uses the platform's native API rather than emulating the GUI

    nsta
    nsta 2007/01/28
    マルチプラットフォームなGUIライブラリ。ライセンスは例外つきLGPL(ソース同梱不要)
  • 米Intel、画像処理ライブラリ「OpenCV 1.0」を公開 | エンタープライズ | マイコミジャーナル

    米Intelは6日(米国時間)、オープンソースの画像処理用ライブラリ「OpenCV 1.0」を正式にリリースした。対応プラットフォームはWindowsのほか、LinuxMac OS XなどのPC UNIX。ソースコードにはBSDライセンスが適用され、自由な改変および再配布が許される。 今回公開されたOpenCV 1.0は、1999年のプロジェクト開始以来、はじめての安定版リリース。安定性が向上したほか、64ビット環境のWindows(Win64)のサポート改善、Pythonインタフェースの改良など、2005年7月リリースのベータ第5版に大幅な修正が加えられている。 Mac OS Xへの対応も強化され、他のPC UNIXではGTK+に依存する機能がCarbonに、FFMPEGに依存する機能がQuickTimeに置き換えられようになったほか、デフォルトの設定でユニバーサルバイナリが生成される

    nsta
    nsta 2006/11/09
    Intel謹製ライブラリ、BSDライセンス
  • Smashing Magazine » Blog Archive » Cheat Sheet Round-Up: Ajax, CSS, LaTeX, Ruby…

    AJAX calls do not cover updates from the server, which are needed for the modern real-time and collaborative web. PubSub (as in “publish and subscribe”) is an established messaging pattern that achieves this. In this article, Alexander Gödde will look at precisely how PubSub solves the updating problem, and he’ll look at one particular solution (the WAMP protocol) that integrates both the calling

    Smashing Magazine » Blog Archive » Cheat Sheet Round-Up: Ajax, CSS, LaTeX, Ruby…
    nsta
    nsta 2006/11/06
    チートシートまとめ
  • expression template

    式の情報を持たせたテンプレート(explassion template:略してET)のことです. 必要になるまで計算を保留させることや, 不要なコンストラクタを生成させないようすることができます. ここでは式テンプレート入門ではなく, 至門(そんな言葉があるのか知らない. 門に入るにはそこにたどり着かねば...)って感じで書いてみます. タイムカプセル暗号の実装の一部を見て 「何やろうとしてるのか分かる」までいけたらなと思います. class Vect { public: enum { N = 4 }; int& operator[](int i) { return p_[i]; } int operator[](int i) const { return p_[i]; } static void add(const Vect& rhs, const Vect& lhs, Vect& de

    nsta
    nsta 2006/11/06
    式の情報を持たせたテンプレート、必要になるまでインスタンス作成や計算を保留
  • gotAPI.com :: documentation search engine

    このドメインを購入する。

    nsta
    nsta 2006/11/06
    各種言語のリファレンス検索、今後の拡張に期待
  • Guru of the Week (GotW) Archive - Main Index Page

    Guru of the Week is a regular series of C++ programming problems created and written by Herb Sutter. Since 1997, it has been a regular feature of the Internet newsgroup comp.lang.c++.moderated, where you can find each issue's questions and answers (and a lot of interesting discussion).

    nsta
    nsta 2006/10/04