vs8
キーバインドは使えるようになったんだけど、インデント(デフォルトで言うTABとSHIFT+TAB)が使えないのと、コピペのクセがどうにも慣れない。emacsキーバインド時はTAB押すと1行だけ自動インデント(ALT+F8)したような挙動。コピペは他のテキストエディタ…
以前ちょろっと触れたC++/CLIは避けて通りたいという話ですが、そう思うようになった経験談を書いてみます。 はじめてだらけの.NET開発がはじまる 描画ルーチンとゲームリソースコンバータはUnmanaged C++からDirectXを使って実装し、C#から操作するためのラ…
既存の静的ライブラリプロジェクトの数多くなりすぎてリンク時間が長くなってきたので、グループ化&動的ライブラリ化でリンク時間を短くしたい。ここ数日ずっとやり方を調べてたんですが、わかってみたらすごく簡単でした。やり方は、 ライブラリビルド時に…
昨日の続き。C4251警告について。 [MSDN]'identifier' : class 'type' は __export キーワードを使って class 'type2' にエクスポートしてください。 class Context { public: static std::auto_ptr<Context> GetInstance(){ return s_singleton; } Context(); ~Conte</context>…
なんとなくそんな気がする程度しか確認していないメモ書きです。 C4251警告は無視するSTLなどtemplate/inlineで定義されているメソッドを確実なものにするためにexportしろって警告です。これにまじめに付き合うとえらい面倒なことになるので、定義されてい…
//新規作成書き込み fopen("hoge.dat","wb"); //追記書き込み fopen("hoge.dat","ab"); この2つ、"hoge.dat"が存在しなければまったく同じ挙動をすると思っていたんですが、違いました。ゲームのバイナリデータはアラインメントをそろえないといけないので…
//独自アロケータ template<typename T> class myallocator { ... }; //独自アロケータを使ったvector typedef std::vector< int, myallocator<int> > myvector; これで独自アロケータでメモリ確保するvectorが作れます。が、しかし、std::strstreamなどの奥底で使われている</int></typename>…