« だらだらしたい | Main | Verilogのツール作成中 »

2007.08.02

初心者がn番目にC++を学ぶ理由

Effective C++を最初から読み始める。同じ本を2回読むのってここ数年無かった気がする。
しかしC++はあれだ。C言語の落とし穴を避けるために作った機能が、結果的に地雷をばらまいただけな気がする。RAIIを実現するためにコントラクタやデストラクタを採用したはずなのに、そこがメモリリークの温床になっているのが悲しい。なんか言語の勉強以上に、注意しないといけないことが多すぎる。最初の言語としてC++ってのは、駄目な気がする。じゃあ何番目ならOKなんだろう。

それはさておき、templateですよ。クラスをtemplateで作って、コンテナに乗せて、アルゴリズムを使う。templateがtemplateを呼び、さらにtemplateで動く。これは幾重にも束ねられた呪いですよ。いったん呪われると、自力では呪いを解けない。ひたすら呪いのアイテムを探し続ける。自覚があろうが無かろうが、未来永劫呪われ続ける。template、template、template・・・・

その呪われた総本山がboostだ!
Template Metaprogrammingなんか、最初から最後まで呪われている。血をすすりながらきらめく妖刀村正みたいだ。彼らがやろうとしていることの意味を少し考えただけで、SANチェックだ。サンプルコードの行間から、テケリ・リ、テケリ・リって聞こえてくるよ。

|

« だらだらしたい | Main | Verilogのツール作成中 »

Comments

SystemC 2.2もBoostを使っています。

http://natu.txt-nifty.com/natsutan/2006/09/systemc_2307.html

にも書きましたよね!

Posted by: 原山みや | 2007.08.04 at 09:54 PM

>>原山みやさん
乱数周りだったかな。2.2からですよね。
ここにもバージョンの互換性問題でてきそうです。

Posted by: なつたん | 2007.08.06 at 08:05 AM

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/18154/15984413

Listed below are links to weblogs that reference 初心者がn番目にC++を学ぶ理由:

« だらだらしたい | Main | Verilogのツール作成中 »