2008-01-01から1年間の記事一覧

こいつぁ使えねぇ

PHP

PHPを1年ぶりに触ったけど、名前空間がver5.3.0からしか無いとか・・・。 やっぱりこいつはデータを引っ張り出して表示させる以外には使いにくいのぉ。 でもレン鯖だと唯一のApacheモジュールで動く言語なのよね。

Emacsを使い始めてみた

何これ神過ぎる。

warning! warning!! warning!!!

VCFをそのまま日本語版VisualStudioでビルドすると色々warningが出ます。 エラーは出ないのでビルドには失敗はしません。 なお、ここで出るwarningのうち、 FoundationKit.h GraphicsKit.h Control.h StringUtil.h のヘッダファイルで出る文字コード関連のwa…

VCFのあれこれ追記

オンラインリファレンス http://vcf-online.org/docs/ref_manual/index.html ライセンスについて http://vcf-online.org/license スタティックライブラリとDLLの2種類用意してあるって話のようだが、どれがDLL読み込み用libファイルでどれが中身入りlibファ…

Visual Component Framework

WindowsでGUIアプリを作る際に、Win32API直叩きは面倒過ぎるし、WinFormsもWPFも重いし、MFCとかは未来無いし、だからって自作ライブラリ作っても大した汎用性持たせられないし、ということで他に良いWindows用GUIライブラリは無いかと探していたら、良さそ…

波紋呼ぶ橋下大阪府知事の「ケータイ校内禁止令」

ネタ元は下記のリンクです。 http://headlines.yahoo.co.jp/hl?a=20081205-00000010-yom-soci 「大阪府 携帯禁止」google検索 橋本大阪府知事が政令市を除く公立小中高校での携帯電話の使用に対して、府として規制を行うと表明したそうです。 公立小中学校 -…

Perlのライブラリパスの追加

use lib '/path' を使う。 環境変数PERL5LIB(Perl5の場合)にパスを放り込む。export PERL5LIB=/path1:/path2って感じ。これを~/.bashrcとか/etc/bash.bashrcに書いておく。 @INCにスクリプトの中でパスを突っ込む。 諦めて@INCに最初から入ってるパスから…

gtkmmはしばらくお休み。

GUI関係はしばらくWindowsの方をいじる事になったのでgtkmmの勉強はしばらくお休み。Windowsでは.NETのWindows Forms使うからあんまり書くこと無いかも・・・。 WPFはWindows7が出てどうなるか次第かなぁ。 個人的にはWindows7は見た目という点で期待。Vista…

mplayer便利!

少し前にmplayerとそのGUIフロントエンドアプリのsmplayerっていうのをインストールしておいたのですが、今日は何となくターミナルからmp3とかを鳴らしたいと思ってmplayerの使い方をぐぐって基本的な所を覚えてみました。 そしたらこれがまた便利。 基本CUI…

コードの書き方

読みやすいは正義。なので適度に関数とかクラスに分割する。 だけど分割しすぎると性能劣化に繋がる。 さじ加減がポイント。

人が勉強をする時

ふと頭の中に湧き上がってきたので文章にしてみます。 最初に結論を書くと、しなければならないと思うから勉強をするのです。 そんなことキリっと言われても当たり前の事じゃんと笑われそうですが(笑) でも自分が生きてきた今までの事を思い返すと、意外と…

gtkmm/GUIプログラミング - 2

今回はwidgetをクラスで表現してそれを表示するところまで書いてみます。 何はともあれ例から。 #include <gtkmm/main.h> #include <gtkmm/window.h> #include <gtkmm/button.h> class MainWindow : public Gtk::Window { Gtk::Button mButton; public: MainWindow(); ~MainWindow(); }; MainWindow::MainWi</gtkmm/button.h></gtkmm/window.h></gtkmm/main.h>…

gtkmm/GUIプログラミング - 1

CではなくてC++で書きたいという理由でGTK+をすっ飛ばしてgtkmmを使い始めてみました。 日本語の満足いくチュートリアルがパッと見つからなかったのでここのドキュメントページに載ってるチュートリアルっぽいリファレンスと格闘中。 とりあえず、ここまで学…

標準モジュールの調べ方

CPANからModule::CoreListをインストールする。 あとはPerlスクリプトからModule::CoreListをuseしてデータもらったり、コンソールからcorelistコマンドを打ち込んで調べればいい。$ corelist モジュール名 $ corelist -v バージョン番号ただし5.8.8などのバ…

MySQLのバックアップの取ってみる

簡単な方法で。 全部バックアップ $ mysqldump -u ユーザー名 -pパスワード --default-character-set=文字コード名 -x --all-databases > 出力ファイル名 指定したDBだけ $ mysqldump -u ユーザー名 -pパスワード --default-character-set=文字コード名 --lo…

7zipの使い方 - 超簡易版 -

$ sudo apt-get install p7zip-full で7zipをインストール。 以下使い方。作成の場合は指定した名前のアーカイブが無ければ新規作成。 アーカイブへの追加作業 $ 7z a アーカイブ名 追加するファイル名 圧縮内容を標準入力から受け取り $ 7z a -si アーカイ…

関数ポインタ

すぐやり方を忘れるので覚えているうちにメモ。 void hoge(){} namespace foo{ void piyo(){} } class bar { public: void boon(){} static void ban(){} }; // typedef 戻り値 ポインタの型名(引数リスト); 引数部分の書き方はC/C++の文法に準じる。 typede…

segmentation fault

セグメントはメモリ上に特定のデータ量でコード及びデータが展開された領域のこと。 んでここから外れた所をポインタで参照したら出るエラーが「segmentation fault」。

音が突然出なくなったときの対処

kubuntuを使っていて、起動中に急に音が鳴らなくなることがあるのでその対処方法。 前提 echo 1 > /dev/dsp とコマンドを入力して bash: /dev/dsp: Device or resource busy と表示される 対処方法 sudo fuser /dev/dsp または sudo lsof /dev/dsp と入力し…

メールと電話

メールには特定電子メールなんちゃら法とかいう名前の法律があり、そう遠くない未来には営業・宣伝目的のメールは事前の許可が無いと送信できないように改正され施行されます この改正法の施行後に事前の許可なしに届いたメールは違法ですのでバンバン届けち…

変数に放り込める最大値を知る。

unsignedな変数ならsignedにキャストして-1を放り込んでunsignedに戻せば達成できます。*1 ですが、コンパイラに付属のヘッダファイルから直値で知れればそっちの方が処理速度は上がります。 ってことで、各変数に放り込める最大値がマクロで定義されている…

途中return

今まで普通にやってきたけど、関数の途中でreturnを平気で書いちゃうのはあんまり良くないらしい。 たしかに関数が肥大化して書いた本人も処理の流れを把握できてないような可読性が著しく下がりまくったコードで、breakだとかcontinueだとかreturnだとかが…

コーディングスタイルメモ

変数・定数・関数の命名規則 - 2008年10月19日版。 変数 グローバル変数は g_ を接頭辞にする。 自動変数は a_ を接頭辞にする。 関数引数は i_ を接頭辞にする。 static変数は s_ を接頭辞にする。 クラスのメンバ変数は m_ を接頭辞にする。 一時変数*1は …

いまさらMYUTA事件について考えてみる

MYUTA事件についてはMYUTA事件 - Google 検索とかから拾える情報を参考に。 もう一年くらい前の事になるんですかね。 当時はこれについて「何で?」としか思えなかったものです。 一年経って多少は頭のキレがよくなって理解できるようになった(ちゃんと理解…

PerlでのHTTPレスポンスヘッダ制御のあれこれ

Perlスクリプトにアクセスされた時に404とか返して嘘つくにはどうしたらいいんだろうと思ったのでメモ。 レスポンス行: Status: (ステータスコード) (補足テキスト) \n って感じでprintとかで出力。ヘッダ行: とりあえずそのまんまprintとかで出力してみる…

EPICの設定

EPICを使っててツールチップが出ると何故かエディタからフォーカスが外れてそのまんまになる。 結構ストレスが溜まる症状なのでツールチップを出さないようにする設定を行います。 Windows > Preferences と進んで出てきた設定ダイアログで以下の操作を行う…

DBI使うときの鉄板

RaiseErrorを有効にしてDBIにdieさせてevalでキャッチ。 AutoCommitは切る。SELECT文だけしか使わない時はどっちでもいい。 問題なく全てが終了したときだけcommitする。他は全部rollbackして元に戻す。 外部から入力された値をSQL文に組み込むときは必ずプ…

なんだかなぁ

こんにゃくゼリーの論理破綻 - (旧姓)タケルンバ卿日記避難所 野田消費者相マンナンライフを脅す - 璧を完うす(へきをまっとうす) http://www.jiji.com/jc/zc?k=200810/2008100200742 で、問題の内閣府に呼び出しをした人はどこの会社と繋がりがあるんで…

C++での多次元配列の作り方

今日久しぶりにC++やってnew char[x][y]って書いたらコンパイラに怒られたのでメモ。 1:コンパイル前に大きさが決まってる場合。 char str[5][5]; 2:コンパイル後に動的に大きさをコントロールする場合。 int x = 5; int y = 5; char **str; str = new cha…

ディレクトリ内のファイルを全て削除

my $DirectoryPath = '/hogehoge/hogehoge'; opendir(DIR, $DirectoryPath); unlink map { $DirectoryPath.'/'.$_ } grep { -f $DirectoryPath.'/'.$_ } readdir DIR; closedir(DIR); ディレクトリは削除されません。