タグ

C++に関するkei10inのブックマーク (29)

  • Qt Labs Japan — Qt Labs 日本語版

    Qt Labs 日語版最近の投稿 コンセプトの証明 – UIKit ベースの Lighthouse プラットフォーム デスクトップ用 QML Components? Qt Labs Japan 一周年と URL の変更のお知らせ Qt Quick 入門 第8回: QML の描画処理 今後の QtWebKit のリリースについて import QtQuick 1.1 Qt Quick 1.0 と今後について(別名: リンクだらけの記事) オープンソースカンファレンス 2011 Tokyo/Spring 御礼 Qt Quick のリリース、コミュニティによる Android や RTOS への Qt の移植とエキサイティングな Qt ロードマップ Qt SDK 1.1 ベータ版のリリース 最近のコメントコンセプトの証明 – UIKit ベースの Lighthouse プラットフォーム に

    kei10in
    kei10in 2011/08/20
  • クラスの operator を定義するとき、戻り値の型はどうすべきか

    クラスの operator を定義するとき、戻り値の型はどうすべきかのまとめ。 全体まとめ 代入演算(「=」) 和差積商(「+」「-」「*」「/」) 自身に対する和差積商(「+=」「-=」「*=」「/=」) 比較演算(「==」「!=」「<」「>」) 配列アクセス(「[ ]」) 実装例 参考 サンプルクラス 以下のクラスに、 operator を定義するとします。 class CPoint3d { public: double x, y, z; CPoint3d(double a = 0, double b = 0, double c = 0) : x(a), y(b), z(c) {} }; 全体まとめ 演算の連鎖ができるように、戻り値の型を void ではなく、ユーザー定義型にする。 自身を返す関数は、戻り値の型を、非const参照にする。 ユーザー定義型の一時オブジェクトを返す関数は、

  • http://www.ustream.tv/recorded/10367357

  • C++ テンプレート引数に応じた場合分け - プログラミングの教科書を置いておくところ

    テンプレート内でのマルチバイト文字とワイド文字の扱いを例に、テンプレート引数に応じた場合分けを実現する方法について説明します テンプレート引数に応じて何か処理を分けたいというときには、その場合分けを別のテンプレートに追い出すことで実現できます テンプレート引数に応じた場合分け 今、Fig.1 のような関数を考えてみましょう Fig.1 #define elementsizeof( a ) sizeof((a)[0]) #define elementsof( a ) (sizeof((a))/elemetsizeof((a))) void debug_dump_vectorA( const std::vector<std::string>& v, int indent = 0 ){ int n = 0; for( std::vector<std::string>::const_iterato

    C++ テンプレート引数に応じた場合分け - プログラミングの教科書を置いておくところ
  • 配列の長さ(要素数)をコンパイル時に計算 - matsutakegohan1の日記

    892 名前: デフォルトの名無しさん 投稿日: 2007/09/23(日) 22:19:28 配列の長さ(要素数)をコンパイル時に計算するにはどうしたらよいですか? コンパイラの最適化レベルによらずにコンパイル時に計算になる例が欲しいです。 よろしくおねがいします。 903 名前: デフォルトの名無しさん [sage] 投稿日: 2007/09/23(日) 23:02:30 #include <cstddef> template<typename T, std::size_t N> char (&lengthof_helper_char_array(T (&a)[N]))[N]; #define lengthof(a) (sizeof(lengthof_helper_char_array(a))) 896 名前: デフォルトの名無しさん 投稿日: 2007/09/23(日) 22:37:

    配列の長さ(要素数)をコンパイル時に計算 - matsutakegohan1の日記
    kei10in
    kei10in 2011/03/08
  • Google Mock — Google Mock ドキュメント日本語訳

    はじめに¶ このページは,Google Mock のドキュメント類を日語訳したものです.翻訳に関しては,誤りのないように配慮しておりますが,至らない点も多々あるかと思います. 誤訳・誤字・脱字や不適切な表現を発見されましたら, ご連絡頂ければ幸いです( http://opencv.jp/forum ). 原文は英語であり,この訳文はオフィシャルなものではありません.なお,免責事項として,訳を利用者が利用するにあたり,いかなる損害に対しても訳者はその責を負いません. Google Mock プロジェクトページ: http://code.google.com/p/googlemock/ ドキュメント¶ Google Mock のドキュメント(SVN trunk 版) このページには,Google Mock の SVN trunk 版 に対するすべてのドキュメントページが挙げられています.

  • Google Test — Google Test ドキュメント日本語訳

    はじめに¶ このページは,Google Test のドキュメント類を日語訳したものです.翻訳に関しては,誤りのないように配慮しておりますが,至らない点も多々あるかと思います. 誤訳・誤字・脱字や不適切な表現を発見されましたら, ご連絡頂ければ幸いです( http://opencv.jp/forum ). 原文は英語であり,この訳文はオフィシャルなものではありません.なお,免責事項として,訳を利用者が利用するにあたり,いかなる損害に対しても訳者はその責を負いません. Google Test プロジェクトページ: http://code.google.com/p/googletest/ ドキュメント¶ Google Test 1.6 のドキュメント このページには,Google Test 1.6 に対するすべてのドキュメントページが挙げられています. Google Test のリリース版を

  • NomisoBraaan Wiki - NomisoBraaan Wiki

    リンクについて サイトはリンクフリーです。ご自由にリンクをお貼り下さい。またリンクした旨のご連絡も不要です。 どのページにリンクして頂いても構いませんが、事前に予告なく変更・削除する可能性がある事をご了承下さい。 ↑ サイトについて サイトは You&I が管理する個人サイトとなっております。 サイトへの書き込みについて下記の内容に該当する場合は、こちらの判断により削除させて頂く事があります。 個人・団体等への誹謗中傷を行うような記述 個人を特定するような記述 上記以外で道義上好ましくない記述 サイトは、Amazon.co.jpのアソシエイト・プログラム に参加しており、サイトのリンクを経由して Amazon.co.jp で商品をご購入された事により得たアフィリエイトポイントは、私個人の私利私欲 の為に使用されますのでご了承下さい。<(_ _)> ↑

  • C++の便利ツール・ライブラリ - DO++

    フルタイムで働きはじめて4ヶ月。 いろんなことがありました。 今日はインターンが来ているということもあり日頃のC++コーディングライフの中で大変重用しているツールを紹介します。といってもどれも有名なツールでググれば解説がでてくるとは思いますので、一言ずつだけ紹介してみます。みなさんも何かよさげなライブラリ・ツールがありましたら教えてください。 - valgrind/callgrind/cachegrind プログラムの実行結果を解析するツール群。まぁ、王道であえて紹介する必要はないかもしいませんが.。valgrindはプログラムのどこかでメモリが漏れているかどうかのチェックに使います.コードのどの部分で確保した領域がどこで漏れているかまで追跡することができます valgrind --leak-check=full command プログラムのどのが計算量的にボトルネックになっているかを調べ

    C++の便利ツール・ライブラリ - DO++
  • Microsoft Learn: Build skills that open doors in your career

    Microsoft Learn. Spark possibility. Build skills that open doors. See all you can do with documentation, hands-on training, and certifications to help you get the most from Microsoft products. Learn by doing Gain the skills you can apply to everyday situations through hands-on training personalized to your needs, at your own pace or with our global network of learning partners. Take training Find

    Microsoft Learn: Build skills that open doors in your career
  • 2006-12-23

    そう。STLインターフェイスが大好きな私は自らのライブラリを極力STLっぽくしようとしています。 でもiostream系はちょっとスキじゃないですが。 という事でWin32API等をSTLのインターフェイスに極力準拠したようなかたちのライブラリがあれば喜んでそれを使いたいのです。 boostなんかはその典型でした。 ですが、世の中広いです。私が考えついた事をすでに行動に移している人が絶対にいるんですね。ただ自分自身でその存在を見つけられないだけ・・・。 という事で昔から目を付けていたライブラリでSTLSoftというのがあります。 もうなんか、見た感じ・・・今までWin32APIをラップしていたのはなんだったのだろう?と考えさせられる事になってしまいそうです。 http://www.stlsoft.org STLSoftの中身 ACESTL (http://acestl.org). ATLS

    2006-12-23
  • C++の話(本当にあった怖い話)

    The document discusses C++ and its history and features. It describes C++ as an extension of C with object-oriented features like classes. It provides information on the creator of C++, Bjarne Stroustrup, and the evolution of C++ since its introduction as a way to add object-oriented programming to C. It also includes sample C++ code demonstrating the use of arrays and includes from the Boost libr

    C++の話(本当にあった怖い話)
    kei10in
    kei10in 2010/07/15
    あるあるすぎて笑えない。
  • shared_ptrの実装1 - while( c++ );

    boostといえばスマートポインタ。 C言語からC++に移るときに最も感動したものがスマートポインタだったと思います。 スコープから抜けるときに誰からも参照されなくなったオブジェクトを自動的にdeleteしてくれるポインタクラスですね。 class Hoge{ ... }; int main() { shared_ptr< int > a( new int( 1 ) ); shared_ptr< Hoge > b( new Hoge() ); cout << *a << endl; b->...(); //適当なメソッド return 0; }//←ここでdeleteされる このように使えるスマートポインタsmart_ptrを実装してみましょう。 とりあえず、最低限必要な機能だけを。 コンストラクタで様々な型のインスタンスを格納する。 ポインタ偽装。operator*、operator->

    shared_ptrの実装1 - while( c++ );
  • boost の Unit Test Framework を使ってみた。 - しがないプログラマ の日記

    語の情報が少なくて、色々とはまったのでメモ。 使用したバージョンは 1.40です。たぶん、1.37以降では使えると思います。環境はWindowsなので、Visual Studio 2008を使用しています。 インストール http://www.boostpro.com/download からインストーラをDownloadしてきます。メールアドレスなどの登録が必要ですが、Freeです。 インストール時に、コンパイルが必要なライブラリのうちインストールするものを聞かれるので、unit test frameworkにチェックを入れておきます。 インストール後、Visual Studioを起動して includeと libディレクトリの設定を行います。ツール→オプション→プロジェクトおよびソリューション→VC++ ディレクトリ の画面で、ディレクトリを表示するプロジェクト→インクルード ファイ

    boost の Unit Test Framework を使ってみた。 - しがないプログラマ の日記
  • Boost Test Library Unit Test Framework のサンプル - メモの日々(2009-05-26)

    運動のため、ときどき家まで歩いて帰ってみている。1時間くらいで帰れる。 暇は終了している。今はC++を使っています。 ■ [c++][dev] Boost Test Library Unit Test Framework のサンプル Boost Test Libraryに含まれているUnit Test Frameworkを使ったのでサンプルをメモ。 手元のBoostのバージョンは1.37、最新は1.39のようだ。 サンプルソース test_main.cpp、vector_test1.cpp、vector_test2.cpp の3つのファイルを作った。 テストの構成は色々あるようだが、dynamic library variant方式にした。BOOST_TEST_DYN_LINK を define すればいいみたい。 dynamic library variant方式の場合は BOOST_T

    Boost Test Library Unit Test Framework のサンプル - メモの日々(2009-05-26)
  • 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

  • http://www.cppll.jp/cppreference/index.html

  • C++ と DI - steps to phantasien t(2007-08-17)

    Java と DI (Dependency Injection) の世界から C++ に戻ってくると気が滅入る. すべてがくっついている. ああ... "Working Effectively With Legacy Code" に従ってバリバリと依存を引き剥がすことになるんだけれど, もうウンザリ. せめて新たに書くコードはレガシー風味とさよならしたい. DI したい. C++ にも少しは DI コンテナの実装がある. Autumn Framework とか. ただリフレクションのない C++ では DI コンテナを使う有難味が薄い. Autumn Framework のチュートリアルを見ると無力感に襲われる. 閉じた型システムの再発明. C++ の限界もあるだろうから, あまり責める気は起きない. COM のような既存のオブジェクトシステムに DI を載せることはできるかもしれない.

  • プログラマのためのテスト2

    1. プログラマのためのテスト Kuniaki IGARASHI http://igarashikuniaki.net/tdiary/ igarashikuniaki@gmail.com 2007.4.24 3. UnitTest ユニットテスト メソッド単位でコードを検証するテストコードを書き、 戻り値、副作用が妥当であることを確認するテスト UnitTest(C++/CPPUnit)のCode例 // テスト対象メソッド addition(int arg1, int arg2) // 引数の和を返し、メンバ変数m_lastResultに結果を格納するメソッド int result = addition(2,3); // テスト対象のメソッドを実行して CPPUNIT_ASSERT_EQUAL((int) 5, result); // 結果を確認 CPPUNIT_ASSERT_EQUAL

    プログラマのためのテスト2
  • Boost.MultiIntrusivedex(k.inaba), Boost.勉強会 phpstudy on USTREAM. Conference