2007-08-17から1日間の記事一覧

そういえば

constというのは.hしか見えないC++の欠陥コンパイラに最適化の情報を与えるためにあるんだった。かわいそうな言語だ。.hなんて.hppから抽出すればいいだけの話なのに。抽出したデータをコンパイラがとっておいて次回のコンパイルにも利用すればいいだけの話…

constとリードオンリー

たとえば、IReadOnlyListといったインターフェースを作れば、配列を受け渡した時に中身を書き換えないという約束を明示できる。つまりsetをなくすことが出来、配列の書き換えが出来なくなるが、オブジェクトの書き換えは出来てしまう(stringのように書き換え…

ラムダ式とout

ラムダ式はローカル変数を直接操れる。今までoutで値を返してたところは全部actionにしてしまうといい。無視したりできて便利だ。値を返すとタイミングが関数を抜ける一ヶ所だけで、たった一個の値しか返せないが、アクションなら好きな時に好きなだけ値を返…

ラムダ式

C#のラムダ式では、ローカル変数はスコープの最後の値になる。ローカル変数だと思って使っているのは、実はnewされたインスタンスであり、ラムダ式を含む関数ではいつの間にかローカル変数をメンバにもつ無名のクラスが出来ている。そのインスタンスの値を使…