2010-06-01から1ヶ月間の記事一覧

世界樹の迷宮3

http://sq3.atlusnet.jp/ http://sq3-blog.atlusnet.jp/ 発売日に買ったもののなんだかんだとあっていまさら書く。えーととりあえずすべての職業が出たあたりで大航海クエストの最後とか 25 階あたりであーこりゃあの職業育てなあかんとか考えてる段階。今作…

AviSynth script with vim

ここまで整った。 ftplugin http://github.com/januswel/dotfiles/blob/master/vimfiles/ftplugin/avisynth.vim compiler http://github.com/januswel/dotfiles/blob/master/vimfiles/compiler/avisynth.vim syntax http://github.com/januswel/dotfiles/blo…

avsutil

ようやっと実行 file を配布できるようになったよ。 http://github.com/downloads/januswel/avsutil/avsutil.20100621.zip http://github.com/januswel/avsutil/downloads 何をするものかは以下。あー exe は全部 CUI ね。 dll/ avsutil.dll これが本体のつ…

cpplib に X11 license を適用した

http://github.com/januswel/cpplib 対象範囲が広がるかな ( GPL にも組み込める ) というのとこんなもん誰でも思いつくという理由で source は全部 public domain にしてたんだけど GPL と X11 license は別に矛盾しないことに気付いたのとまぁ著作権主張し…

dll 作成時の def file

C++ みたいに名前空間がある言語はどうすんだろうと思ったんだけどあくまで関数名で認識するぽい ? というのも例えば void dll::foo(void); な関数があったとして以下のように書くのかと思ったら LIBRARY EXPORTS dll::foo 以下が正解だったので。 LIBRARY E…

四捨五入 & 最近接偶数丸め

字面的に強キャラぽい。 C99 で math.h に round() が定義されているみたいなんだけどどうも VS10 で使えないみたいだし cmath には入ってないぽい ( C++98 だからないのが当たり前なのか ? ) ので書いてみた。 http://github.com/januswel/cpplib/blob/mast…

counter

incrementor と言った方がいいかな。 http://github.com/januswel/cpplib/commit/e66b3c5845034b960ea4f53bce7480680e7bae96 http://github.com/januswel/cpplib/blob/master/header/algorithm.hpp 以下のような classical な code を #include <vector> int main(vo</vector>…

istream -> ostream 時の進捗表示

dev

http://d.hatena.ne.jp/janus_wel/20100618/1276854557 で std::transform() を使って進捗表示をする、とかやってたんだけど fstream やなんかの stream 間の単純な copy なら std::istream::read() と std::ostream::write を使って以下のようにしたほうが…

STL algorithm の進捗状況を表示する

とはいっても std::transform だけなんだけど。もうちょっと考えてうまく構造化してやればできるはず。思いつきで書いてます。 http://github.com/januswel/cpplib/commit/2b0e6e80818ca955260ce3980f4129e99fb65aa2 http://github.com/januswel/cpplib/blob…

文字じゃねぇ

comment で istream に std::noskipws manipulator を流し込むか std::istream::unsetf() に std::ios_base::skipws を指定しろと教えてもらったので ( http://togetter.com/li/30132 ) そっちで。ありがとう id:melpon と zakkas783 さん。自前 library に …

続・続・ streambuf と iostream

http://d.hatena.ne.jp/janus_wel/20100616/1276702908 の続き。とりあえず抑えるべきことは抑えたぽいので実際に code を書いてみる。何かの device に書き込むというのもちょっとめんどくさいので今回は入力専用で alphabet を順に返す stream を定義して…

続・ streambuf と iostream

http://d.hatena.ne.jp/janus_wel/20100616/1276702604 の続き。仕様に書いてある仮想関数で定義するべきことを要約する、というのが次にやるべきことなんだけどその前に streambuf の buf の部分、 buffering に関連することを理解する必要がある。とはいっ…

streambuf と iostream

std::streambuf と std::iostream / std::istream / std::ostream のどれかを継承して自分好みの stream を作ろうとかそういうアレ。多分 3 回目くらいの try 。今まで適当にいじってわかんねーわかんねー言ってたので今回はとりあえず仕様からあたることに…

続・続・ interface と実装を分離する

長いんだけど http://d.hatena.ne.jp/janus_wel/20100608/1275989229 の最後で言ってた interface の管理用 class の実装例を書いてみた。長くなったついでに複数の似たような object を管理できるようにもしてみた。以下の code では id という整数値を指定…

続・ interface と実装を分離する

http://d.hatena.ne.jp/janus_wel/20100608/1275986820 で一応 user に実装の詳細を見せなくすることができたわけだけど user 側で delete 文を使う必要が出てきてしまったわけだ。というわけでそこらへんを何とかしようというのが目的。でまぁ早速なんだけ…

interface と実装を分離する

例えば何らかの domain に特化した class なり function なりを詰め込んだ library ( static / dynamic 問わず ) もしくは obj やら o やらとそれを使うための interface である header file 、というようなものを作るとき、 C++ で素直にやるなら継承を使っ…

文字列が数値を表わすか check する

boost::regex あたりの正規表現 library をつかえというので FA 。なんだけど自分で書いてみた。 http://github.com/januswel/cpplib/blob/master/header/strcheck.hpp http://github.com/januswel/cpplib/blob/master/sample/strcheck/main.cpp 一応 locale…

bmp

Windows Bitmap の header をアレコレするアレ。 24bit に限定。 32bit も扱えるようにしてもいいとは思うんだけどめんどくさい。あんまり見ないし。あと 256 色とか時代的にめんどくさい気がするのでこれだけで問題ない気もする。 http://github.com/janusw…

wav file の data を扱う

もう更新する気はないとかいっといて ( http://d.hatena.ne.jp/janus_wel/20100530/1275206953 ) さっそくうそついた感じなんだけどいわゆる sampling data を扱う class を定義して istream_iterator や ostream_iterator で使えてうれしい形にした。 http:…