トップ «前の日記(2006-06-23) 最新 次の日記(2006-06-25)» 編集

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|

ToDo:


2006-06-24

_ うにまがが終わったらしい

別に残念でもないような…?

(02:41)

_ template

がどうとか言ってる子はキモい子です! って話があったんだけど、 みんなどういう理由でそんな子になってしまったんだろうか… あと妙に同世代が多い気がするんだよな。 少し上の人は I hate C++! がデファクトに なりきっているというか。

世界で2番目に誤解された言語 C++ 。とかどうだろう。

いや、別に誤解はされてないな…

まぁそんなこんなで最近見てる人の経歴を適当に見てみる。

http://d.hatena.ne.jp/Cryolite/

同世代の模様。

http://d.hatena.ne.jp/rinset/

奥さんがいらっしゃるってことは少し上かしら。 しかし最近はそういう判断は外れる歳になっている。

http://d.hatena.ne.jp/syd_syd/

大学院生さんらしい。 いかにも言語好きーな人なのでわかりやすいかな。

http://d.hatena.ne.jp/y-hamigaki/

今気付いたけど cppll でよく見る人だったよ!

http://d.hatena.ne.jp/mb2sync/

あーそういや Boost.Typeof 見てみないとなーと思ったんだった。 http://d.hatena.ne.jp/mb2sync/20050422#p1 はあとで見る系。

結局世代とかよくわからんかったけど なんでもいいや。

(03:07)

_ Boost.typeof

http://www.accu-usa.org/2000-05-Main.html

あれーユーザ定義型はーと思ったら REGISTER_TYPEOF とかあるな…

しんどいけどマジメに追ってみよう…

#include <iostream>
#include <list>
#include <boost/typeof/typeof.hpp>

using namespace std;
using namespace boost;

struct C {
    C() { cout << "hello world!" << endl; }
};

int ifunc() { return 0; }
list<int>::iterator itefunc() { static list<int> l; return l.begin(); }
C cfunc() { return C(); }

int main() {
    BOOST_AUTO(i, ifunc());
    BOOST_AUTO(ite, itefunc());
    BOOST_AUTO(c, cfunc());
}

ああうん。すごいな。

(03:36)

int main() {
    BOOST_TYPEOF(cfunc()) c = cfunc();
    c = *(new BOOST_TYPEOF(cfunc()));
}

_ が、 cl.exe だと、

int main() {
    boost::type_of::msvc_typeid_wrapper<sizeof(*boost::type_of::encode_start(cfunc()))>::type c = cfunc();
    c = *(new boost::type_of::msvc_typeid_wrapper<sizeof(*boost::type_of::encode_start(cfunc()))>::type);
}

_ こうなる。 GCC だと __typeof__ になる。

_ インスタンス化するたびにカウントアップする template とか作れば、 まぁこれで作れるかなぁ。

_ で、インスタンス化するたびにカウントアップねえ…

#include <iostream>
#include <list>
#include <boost/typeof/typeof.hpp>

using namespace std;
using namespace boost;

struct C {
    C() { cout << "hello world!" << endl; }
};
struct D {};

C cfunc() { return C(); }
C cfunc2() { return C(); }
D dfunc() { return D(); }

int main() {
    BOOST_TYPEOF(cfunc()) c = cfunc();
    c = *(new BOOST_TYPEOF(cfunc()));
    cout << sizeof(*boost::type_of::encode_start(cfunc())) << endl;
    cout << sizeof(*boost::type_of::encode_start(cfunc2())) << endl;
    cout << sizeof(*boost::type_of::encode_start(dfunc())) << endl;
}

_ が、 5 5 6 と出力する。明らかにカウンタがある。

_ http://boost-sandbox.cvs.sourceforge.net/*checkout*/boost-sandbox/boost-sandbox/boost/typeof/msvc/typeof_impl.hpp?revision=1.5

_ どう見てもカウンタみたいです。 実装がよくわからんがな。

_ あとまぁ msvc/ 以外の実装は不明チックな。 compliant implementation もよくわからんけど、 要するに BOOST_PP マンセーってことですか。

_ んー。なんか昔見たことある気が超するんだよなぁ。

_ (04:26)

_ あれ

むっちゃカンタンじゃん。

TypeList に放り込んでその Length 返すだけ。 以上。

(04:35)

_ いや違うだろと思ったりしつつ

なんかだいたいわかった気もした。

気が向いたらちゃんと追う。

(05:24)

_ server side JavaScript

最初聞いた時は冗談レベルに思ったけど、 もっと評価されていいよなぁという気がした。

このへんとかも面白げである。

http://www.tohoho-web.com/html/server.htm

(05:32)

_ 宇多田とテトリス

http://club.nintendo.jp/tetris_campaign/index.html?C

(19:40)

お名前:
E-mail:
コメント:
人生、宇宙、すべての答え
本日のリンク元

2006年
6月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
1.shinh(2014-05-24 03:56) 2.YT(2014-05-24 03:56) 3.niha(2014-05-24 03:56)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h