2009-02-16から1日間の記事一覧

PS2買ってきたのに

手元に八神はやてがいるのは何でだろう? 何かよく分からんが実に恐ろしい。

Nice bug.

C++

template<typename ID> struct msvc_extract_type { struct id2type; }; template<typename T, typename ID> struct msvc_register_type : msvc_extract_type<ID> { typedef msvc_extract_type<ID> base_type; struct base_type::id2type // This uses nice VC6.5 and VC7.1 bugfeature { typedef T type; };</id></id></typename></typename>…

同じスコープ内に重複した名前を宣言する

C++

お遊び。 namespace ns { typedef int declared; struct undeclared { int dummy[2]; }; template<size_t> struct S; template<> struct S<sizeof(undeclared)> { template<int> struct SS { declared n; void operator=(int) {} SS(int) {} friend SS & operator>(int, SS & ss) { return ss;</int></sizeof(undeclared)></size_t>…

色々な関数宣言の練習

C++

ちょっと仕事で宣言からtypedefで宣言された型名を調べる必要があって、構文解析の真似事が必要になったので。 // int を返す関数へのポインタを返す関数へのポインタ int (*(*pf)())();int ff() { return 0; } int (*f())() { return ff; }pf = f;// int を…

Boost.ScopeExitの実装をのぞいてみる

C++

これぐらいなら俺でも余裕で作れると思ったらそうは問屋が卸さなかった。 void f() { int n = 0; vector<int> v; BOOST_SCOPE_EXIT)((n)(&v))( { v.push_back(n); cout << v[0] << endl; } BOOST_SCOPE_EXIT_END } このコードをBoost.Preprocessorに通してからそ</int>…

せっちゃんはね

せつなっていうんだ ほんとはね だけどちっちゃいときからじぶんのこと「ガンダムだ!」っていうんだよ おかしいね せっちゃん

大老って

江戸時代の幕府の役職だから、年齢あんまり関係ない。