2008-02-01から1ヶ月間の記事一覧

uint8_t* getBuf() const { return m_buf; } でコンパイルエラーになる

普段ちゃんと const を付けていないので自分でもビックリなところでつまずいてしまった。 #include <stdint.h> class test { public: uint8_t* getBuf() { return m_buf; } private: uint8_t m_buf[256]; }; というソースコードで、getBuf() は副作用がないから const </stdint.h>…

gcc の警告オプション

自分でプログラミングするときの指定を整理してみた。自分で全部の警告オプションを選別できなかったので、Bruce Evans 提唱の BDECFLAGS を基本にしている。他にオススメのオプションがあれば教えてください。 C/C++ -Werror -Wall -W -Wno-format-y2k -Wpo…

文字列リテラルの配列への代入

gcc で -Wformat-nonliteral の確認をしていたときに、文字列リテラルについてちょっと自分が誤解していたことに気づいた。文字列リテラルの代入は(善し悪しはともかく)次のようなバリエーションがある。 char string0[] = "test"; const char string1[] =…

女医さんの問題

前職の同僚の上司が入院したときに女医さんから「答えが分からない」と相談されたという出所不明の問題です。 12 時間制の時計 1 時間毎に時報が鳴る 時報は時刻の数だけ 1 秒間隔で鳴る 3 時ならピピピと 3 秒鳴る 時刻は好きに合わせて良い こんな時計があ…

IE/Firefox で表示している Amazon のページの URL を短縮する

Amazon で検索した本を、他人に紹介したり del.icio.us に追加する場合に、短い URL の方が都合がいい。いつも www.amazon.jp/dp/XXXXX/ と手打ちしていたのだけど面倒なので Bookmarklet を作ってみた。 javascript:(function(){if(location.href.match(/ht…

FreeMind から JUDE/Think! へのマインドマップの移行

直接のファイルの読み込みはまだできない。 FreeMind でルートのみを選択してコピー JUDE/Think! でペースト ルートトピックの下のトピックとして貼り付けられる 本来のルートであるトピックを選択して右クリックメニュー「新しいマインドマップに分割する」…

Bookmarklet の JavaScript の戻り値は「ページの内容」

戻り値は URL かと勘違いしていたが、ページ内容そのものだった。以下の例では文字列が text として表示される。("〜" とすれば HTML として表示される) javascript: "http://www.yahoo.co.jp";