Entries from 2005-11-01 to 1 month

初期化リストのメンバは、宣言した順に並べよう 13項

僕の記憶が正しければ、初期化リストは宣言順にしないと、エラーかワーニングでるようなきがするのでこれはオーケーかな。 今日は短いので一応このEffective C++勉強の意図を説明しておくと。 はてな技術勉強会で担当が日替わりで発表を行い、毎日少しずつ新…

ARPの次は IP? ICMP?

ARPで作ったもののまとめ。次はIPの解析あたりから。 このアプリには2つのスレッドがある 1.ドライバスレッド 2. ARPサービススレッド 2のスレッドが nic_write, nic_readの関数経由でドライバにアクセスしてARPのサービスを提供する ARPサービス⇔nic_read/n…

はてなRSSを簡単キーボード操作

rss

はてなリングのリリースでちょっと影に隠れてしまいましたが、はてなRSSにキーボード操作機能を追加しました。 これはちょっとこだわりがありまして、皆様にぜひ一度試してもらいたい機能です。 ポイントはマウスを使わず片手で、記事をさくさく読みすすめら…

はてなリングリリース

本日、新サービスのはてなリングをリリースしました。 http://ring.hatena.ne.jp/はてなリングはブログをつなげる新しいコミュニケーションツール。懐かしくでも新しい、Web 2.0 時代の「ウェブリング」です。 RSSフィードとソーシャルブックマークをベース…

コンストラクタでは、代入よりも初期化を使おう 12項

これよりも Hoge::Hoge(const string& initName) { this->name = initName; }これを使いましょうという話。 Hoge::Hoge(const string& initName) : name(initName) { } 理由は、初期化リストではstringのコピーコンストラクタのみが実行されるのに対して、コ…

サンデープログラマ

MonaはARPの実装を進める。 もはやARPというよりは、NICドライバとARPサービスの結合を如何に疎とするかみたいなことになってきた。 疎結合を目指しつつ、同一プロセス内なのでフレームデータの交換はグローバル変数を介して行うことで妥協。(今後別プロセ…

味噌汁2.0

今日、嫁が「今日の味噌汁は、なんと味噌汁2.0よ」と言い出した。 2.0はここまで、浸透していますよ(ぉ。 いったいどこで覚えてきたんだろう?

半角カナテスト

д゚)ジー

メモリを動的に割り当てるクラスではコピーコンストラクタと代入演算子を宣言しよう 11項

コピーコンストラクタってほとんど書いてないので、かなり耳が痛い。 ここでまずい事例として出ているのは class String { String(); ~String(); private: char* data; }; String a("Hello"); String b("Good bye"); a= b;デフォルトの代入演算子だとメンバ…

一回 お休み

風邪につき一回お休み

operator newを書くなら、operator delete も書こう 10項

これはnew/deleteの実装をしたことがある人ならすぐ分かると思う。 newで割り当てられたメモリは、サイズとポインタという情報を持っていなければならず、deleteではその情報を元にメモリを解放する。 newから返るのは、ポインタだけなので、サイズ情報が別…

sshアタック

お勉強・実験用の外部公開サーバですが、sshはもちろん公開鍵方式にしてあります。 外部公開していると、1日に1回はssh のパスワード辞書アタックがくるのですがこれが帯域とCPUを食うのが気になっていました。(アクセス自体は絶対成功しないのですが・・・…

「普通の」形式のnewを掩蔽しないように注意しよう 9項

"operator new"という名前の関数をクラスの内側で宣言すると、「普通の」形式のnewを掩蔽してしまうという話。 一度もやったことがないので実感なし。 掩蔽は「えんぺい」と読むことを学んだ。 Effective C++ 【改訂第2版】 アスキーアジソンウェスレイシリ…