終了

以前UMLは素人を騙すくらいにしか役に立たないらしい。 - 並列メモ?と言うのを書いたのだが、これについてリアルワールドで反論せずblogで愚痴るのは…とかなんとかdisられたらしい。 で、それに反論してみようかとも思ったのだが、面倒なのでこのblog自体を…

Boost C++ Libraryのお勉強その14

Boost.MemberFunction memberをmemと略すのはどうなんだろ。cの標準ライブラリ的にmemはmemoryの略だよな。 #include <iostream> #include <vector> #include <algorithm> #include <boost/mem_fn.hpp> class Dummy { private: int e_; public: Dummy(int e) : e_(e) {} void fun(void) { std::cout << e_ <<</boost/mem_fn.hpp></algorithm></vector></iostream>…

windowsのパーティションを切り直さずにubuntuを入れる

昔から二つのosを一つの計算機に入れるネタはあって、パーティション切ってデュアルブートとか、VMとか色々あるわけだが、最近は(といっても何年も前からあるみたいだが)Download Ubuntu Desktop | Download | Ubuntuと言うのでパーティション切り直さずに…

Boost C++ Libraryのお勉強その13

数学関係が多いので、豪快に素通りしてみる。 Boost.Mpi 頑張ってはみたものの、コンパイル環境が構築できず。 Boost.Mpl 言語の当初想定をはるかに超えてしまったっぽいやつ。そのうち頑張って使いこなしてみたい気がしないでもないが、コンパイル時間の限…

なんかgoogleとかいう検索エンジンの結果が

片っ端から「このサイトはコンピュータに損害を与える可能性があります。」とかくっつけてるけど、何かあったのか?バグったのか?

2009年1月の記録

日帰りで2回。

Boost C++ Libraryのお勉強その12

http://www.boost.org/doc/libs/1_35_0webブラウザのスクロールバーの位置からすると、やっと半分てところか。 Boost.Iostream IO streamが簡単に作れる仕組み。 #include <iostream> #include <boost/iostreams/stream.hpp> #include <boost/iostreams/concepts.hpp> class zero : public boost::iostreams::source { public: std</boost/iostreams/concepts.hpp></boost/iostreams/stream.hpp></iostream>…

やっぱり何本と数えるのか?

http://www.atmarkit.co.jp/news/200901/16/migration.html 移行で最も苦労したのは既存のCOBOLプログラムの総数が分からなかったことだ。開発計画時は5366本と見積もっていたが、実際は6573本のプログラムがあった。 前見た記事とも書いている人違うし、Cの…

refactoring to patterns.

パターン指向リファクタリング入門~ソフトウエア設計を改善する27の作法作者: ジョシュア・ケリーエブスキー,小黒直樹,村上歴,高橋一成,越智典子出版社/メーカー: 日経BP社発売日: 2005/08/04メディア: 単行本購入: 11人 クリック: 313回この商品を含むブロ…

貿易依存度

総務省統計局に貿易依存度のデータがあった。http://www.stat.go.jp/data/sekai/09.htm#09-032006年までしかなかったが、それによると日本の輸出依存度は14.9%、輸入依存度は13.3%。円高で損する割合と円高で特する割合はほぼ変わらない。

UMLは素人を騙すくらいにしか役に立たないらしい。

UML

よーするに、日常的にUML使って設計している私は、素人の自分を自分で騙してると言う結論に至る。 ちょっとは反論してみようと思わなくもないのだが、多勢に無勢で勝てそうもないので特に何もせず。こーゆーところはふつーのソフト会社と変わらないんだよな…

メモリ差し直した

Phenom機がかなりの確率でブートしなかったので、何となくメモリを順番変えて差し直したら直った。接触不良だったのかな?でも一度起動すれば普通に動いてたし、memtestも通ってたので何か謎。起動で失敗するだけだから電源の立ち上がりとかかな。

対角線上

サンワサプライ 光学式トラックボールマウス 5ボタン ブラック MA-TB38BK出版社/メーカー: サンワサプライ発売日: 2008/12/01メディア: Personal Computers クリック: 18回この商品を含むブログ (8件) を見るなんか使いずらいきがしなくもなかったが、ちょう…

Boost C++ Libraryのお勉強その11

Boost.Integer C99でstdint.hが追加になってるけど、現行のC++にはないのでboostにありますよとか、互換性の為のもの。 Boost.Interprocess UN*Xの世界でIPCとか言ってるもの。プロセス生成自体が色々面倒なので飛ばす。 Boost.Interval 数値の範囲同士を計…

llvmは確かに速い。

g++-4.3で実行時間が100[s]かかってるコードを、llvm-2.2のg++-4.2でコンパイルして実行すると70[s]しかかからない。-O3とかコンパイルオプションは同一の状態。x86-64用のllvmは確かに速い。

[boost]Boost C++ Libraryのお勉強その10

Boost.Graph グラフ理論とか。知らないので飛ばす。 Boost.IO_State_Savers サブライブラリらしいので飛ばす。 Boost.In_Place_Factory なんかよく分からん。(だんだん私のやる気がなくなってきた?)

[boost]Boost C++ Libraryのお勉強その9

boost::hash hash関数。興味ないので飛ばす。 boost::fusion tupleは各要素の型が違うのでSTLのアルゴリズムが使えないので、その辺に対応したもの。 #include <iostream> #include <string> #include <boost/fusion/tuple.hpp> #include <boost/fusion/algorithm.hpp> struct Print { template < typename T > void operator () (T </boost/fusion/algorithm.hpp></boost/fusion/tuple.hpp></string></iostream>…

ちゃんと表示されるようになってる。

コードがちゃんと表示されるようになってる。直った?

はてなダイアリーのバージョンが変わってバグった?

昔書いたコードが表示されていない。 http://d.hatena.ne.jp/vtwinautomaton/20081124/1227529806googleのキャッシュを見るとコードが表示されてる。 http://72.14.235.132/search?q=cache:7i_uc3w6w14J:d.hatena.ne.jp/vtwinautomaton/20081124/1227529806+…

Boost C++ Libraryのお勉強その8

functionとかfunctionalとか紛らわしいんですが…。 Boost.Function 関数っぽいものを保持できるクラス。structの定義をmain()内に書いたらコンパイルできないのにちょっとハマった。 #include <iostream> #include <boost/function.hpp> struct pow4 { int operator() (int x) const { retu</boost/function.hpp></iostream>…

WAWってなんだ?

以前id:w_oさんにもらったコメントにWAWという言葉がでてきたけど、Warren Abstruct Machine…はWAMだから違うか。なんだろ?と思って調べたらWrite After Writeの事だった。

キーボードが効かなくなる

なんか時々キーボードが効かなくなる。SCIM触ったりすると動くようになるので、ソフト的な問題なんだと思うがよく分からない。

Boost C++ Libraryのお勉強その7

Boost.Enable_If 普通に使うとテンプレート関数あらゆる型を取るので、 それを制御するための仕組み。 ぱっと見使い方がわかりずらくて、まずenable_ifは引数に書くけどこれは宣言するだけで関数内では使わず、あくまでテンプレートの実体化の為に処理系が使…

Boost C++ Libraryのお勉強その6

連休中じゃ全然終わらなかった…。 Boost.Date_Time 時間クラス色々。boost_date_timeをリンクする事。 #include <iostream> #include <boost/date_time.hpp> int main(void) { boost::gregorian::date d(2008,boost::gregorian::Nov,24); std::cout << boost::gregorian::to_simple_string(d</boost/date_time.hpp></iostream>…

Boost C++ Libraryのお勉強その5

連休中には終わらなそう…。 Boost.Date_Time 時間クラス色々。boost_date_timeをリンクする事。 #include <iostream> #include <boost/date_time.hpp> int main(void) { boost::gregorian::date d(2008,boost::gregorian::Nov,24); std::cout << boost::gregorian::to_simple_string(d) << s</boost/date_time.hpp></iostream>…

Boost C++ Libraryのお勉強その4

Boost.ConceptCheck テンプレート引数として渡したものがコンパイル出来ないものの場合、分かりずらいコンパイルエラーとなるので、わかりやすくするための仕組み。どうしてもコンパイル出来ずに断念…。 Boost.Config boost自体を構築するためのもの?マニュ…

Boost C++ Libraryのお勉強その3

Boost.CircularBuffer いわゆるリングバッファ。 #include <iostream> #include <boost/circular_buffer.hpp> int main(void) { boost::circular_buffer<int> cb(3); cb.push_back(0); cb.push_back(1); cb.push_back(2); std::cout << cb[0] << cb[1] << cb[2] << std::endl; cb.push_back(3); std::co</int></boost/circular_buffer.hpp></iostream>…

Boost C++ Libraryのお勉強その2

Boost.Bimap 双方向マップ。どんな場合に便利なのかちょっと思い浮かばない。 テンプレート引数を単純にintとかにせず、専用の型で包んで渡すと挙動を変えられるみたいで、パッケージ全体としてはやや大きめ。 #include <iostream> #include <boost/bimap.hpp> int main(void) { typedef</boost/bimap.hpp></iostream>…

Boost C++ Libraryのお勉強その1

Boost C++ Libraryもろくにシラネーのか。ったく何年C++で飯食ってると思ってんだ。…とか自分のboost知らなさ加減にイライラするのでお勉強。 そんなわけで連休中短期集中連載、aから始めるBoost C++ Library。都合により1.35.0で。(何でXubuntu8.10には1.3…

コンストラクタを持ったクラスを共用体に使うとどうなるのか

C++

#include <iostream> class Alfa { public: Alfa() { std::cout << __func__ << std::endl; } }; class Bravo { public: Bravo() { std::cout << __func__ << std::endl; } }; int main() { union { Alfa a; Bravo b; } u; return 0; } 答え:コンパイルエラー $ g++ u</iostream>…