C++
やりたいこと 型情報なしに管理したいがないと削除時に困る。削除時だけは型情報が欲しい。 コード #include <iostream> using namespace std; class Foo { public: Foo() { cout << "Foo" << endl; } virtual ~Foo() { cout << "~Foo" << endl; } protected: void *m_</iostream>…
無難にgoogle testを使うか、cspecで新しいことを始めるかといった選択でしょうか・・・。 google test framework cppunitよりもスマートな印象。基本機能に大きな違いはないですが、google testの悪いところが今のところ見つからないので、cppunitの代わり…
前提 Javascriptは書けるけど、C++を書いたことがないという友人のためのエントリー。何かスクリプトがかけることが前提で構文などをできるだけ、端折りながら進めていきます。 開発環境を作る Windowsの場合 Visual StudioのExpress版をインストールして(こ…
特徴 ローカルクラスもインナークラスも外のクラスメンバにprivateなメンバにもアクセスできる ローカルクラスはテンプレート引数に使えない(コンパイラによっては使えるかも) ローカルクラスとインナークラスの定義 外のクラスにアクセスできるサンプルコ…
特徴 ローカルクラスもインナークラスも外のクラスメンバにprivateなメンバにもアクセスできる ローカルクラスはテンプレート引数に使えない(コンパイラによっては使えるかも) ローカルクラスとインナークラスの定義 外のクラスにアクセスできるサンプルコ…
ClearSilverとは ClearSilverはC++で使えるテンプレートエンジンでHDFと呼ばれるデータをテンプレートファイルに注入する仕組みになっている。HDFはテキストとしても表現できるが、プログラムのコードとしても表現できるようになっており柔軟に対応が出来る…
http://visualstudiogallery.msdn.microsoft.com/ja-jp/be0123a2-6d23-4b68-9f82-d43840bc655d ショートカットの一覧表示をしてくれるっぽい。たまに使うかな? MetalScroll extension RockScrollの後継っぽい。 ClassAccessor Generator extension NUnitに…
見つけたときにこれは!と思ったものの何者かわからなかったので、http://noppoland.at.webry.info/200910/article_45.htmlを見てから購入。とりあえず、使えることが確認できないと300円でもゴミがたまって困る。 汎用USBドライバ 組み込みとかハード側には…
20091109 修正 ListenerCollection::Remove()内のstd::vector::erase()にconst_iteratorを渡していたのをiteratorに修正。vector::erase - C++ Referenceをみる限り、const_iteratorで通らなそう。書いたのが結構前だけど、(VC9で)通してから貼り付けたつも…
下のようなコードが通るのを知らなかった。 class HogeA{ public: virtual void Foo( int x ) = 0; }; class HogeB{ public: virtual void Foo( int x, int y ) = 0; }; class TestC : public HogeA, HogeB{ public: void Foo( int x ) { std::cout << x << …
boost::filesystem::file_sizeを使うと簡単 boostを使うのはとてもいい選択だなぁとよく思うけども、file_size以外の関数を使わないのに使うのがちょっと大げさかなと思って、fstreamだけで調べる方法をメモしておく。 今回はファイルサイズを取得するには?…
HandyARにはOpenCVとglutが必要なのでそのセットアップについてメモする 今回の環境 Visual Studio.net 2005 OpenCV 1.0 glut3.7 HandyAR 0.2 OpenCVのセットアップ OpenCVをダウンロードする。今回はWindowsで開発を進めるので、windows版のインストーラー…
Doxygenはメジャーなドキュメント生成ツール。 C++、C、Java、Objective-C、Pythonなどに対応していて、JavaDoc風のコメントからでも生成できるのがありがたい。 Javaなんかは別にJavaDocを純粋に使ったらいいと思うのだけども、C++とかだと結構面倒。加えて…
色々指摘がありましたので、それに関してはこちらに書きました。 転送中によるとCV_CAP_PROP_FRAME_HEIGHTやCV_CAP_PROP_FRAME_WIDTHを使って高さと幅が取得も設定もできないのは、OpenCVのカメラのモジュールがLogicoolの製品に対応していないのが原因ぽい…
以前書いたときにはロケールの設定によりUTF-8のデータが読み込めるようになったしかし!!!まだ出力ができていなかった・・・ Win32APIなら WideCharToMultiByteやMultiByteToWideCharなどがあり、確かにこれでも出来るっぽいのだけれども 環境依存があま…
クラスのイニシャライズリストに全てのメンバを書いて、いつでも意図した通りに初期化されるか 考慮しないといけない。自分で作ったクラスに有効にしたり、無効にしたりするメソッドがあって、下のような感じになっている状況。 class A{ public: A(){} void…
答えはここにあった!!! http://www.freeml.com/cppll_novice/1550/latest std::locale loc( std::locale( "japanese" ), &std::use_facet< std::numpunct< char > >( std::locale::classic() ) ); std::locale::global( loc ); とか std::locale loc = st…
特定の2バイト文字列があると「定数が2行目に続いています」 と意味わからないことを言ってくる。http://blog.kujirahand.com/?eid=445675 ここで言っているように、文字列の最後に\0を入れておくとうまく行った。 std::locale::global( std::locale( "japa…
マニピュレーターが必要になったのでここを参考にしたhttp://homepage2.nifty.com/well/Manipulator.html#manipulator_witout_parameterGCCだとうまく行かなくて、色々試したが原因不明
ARToolKitというライブラリがあって http://www1.bbiq.jp/kougaku/ARToolKit.html のようなことができるらしい。電脳コイルでみたような世界が構築できる可能性を示していると言えそうだ。
CVはComputer Visionの略公式のチュートリアル http://jaist.dl.sourceforge.net/sourceforge/opencvlibrary/opencv_introduction_2007June9.pdf インストールとセットアップの方法が示されている。 http://kurolab.cntl.kyutech.ac.jp/wiki/farm/HowTo/?(Wi…
http://wikiwiki.jp/redstrange/?C%2B%2B%A5%B3%A1%BC%A5%C7%A5%A3%A5%F3%A5%B0%A5%B9%A5%BF%A5%A4%A5%EB ライブラリの設計を考えるときに、一つのプラットフォームに限らず他でも動いて欲しいなと思って試行錯誤中なのだが、システム依存の部分を減らしたい…
Windowsログのネタはあんまり欲しいものがGoogle先生でも教えてくれない。 とりあえず、英語でも検索してみたんだけども、見つからない。そもそもMSDNで見つからない(いや、見つけづらいだけかもしれない)ことが一番の問題。 Win32APIは使っちゃいけないん…
不完全な情報です。正しく調べつくした結果じゃないので何か問題あったらドンマイの方向で イベントビュワーでevtファイルが生成できます。ログを加工することをするときには OpenEventLog、ReadEventLogなどのAPIを使うわけだけれども 状況として多々、evt…