////////////////////////////////////////////////////////////////////
/*

    KAB-studio.h


    (C)KAB-studio 1999 - 2005 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz

    送信日： 2005/09/05(Mon) No.322
    配信数： 1877
    発行元： まぐまぐ ( URL: http://www.mag2.com/  ID: 0000012198 )
*/
////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////
// NEW!!
http://www.kab-studio.biz/index.html

2005/09/05 (Mon)
　ほとはー外伝３にP.32を追加！
[ 三人合体ホットハーブ 外伝３ 【ワタシ の キロク】 ]
http://www.kab-studio.biz/Comic/HotHerbA3/index.html

2005/09/05 (Mon)
　#pragma twice ホームページ版にアーカイブ追加！
13.11 構造体のソート
13.12 コレクションを使ってみよう
[ #pragma twice ]
http://www.kab-studio.biz/Programing/PragmaTwice/index.html


////////////////////////////////////////////////////////////////////
// ちょお普通な日記
http://www.kab-studio.biz/nikki2/index.html

2005/08/28 (Sun)
　朝５時までカブカテキョ。なんか大忙し。さらに明日分の更新。アニメの
感想書くのも結構負担？　なんかへろへろ。そして結婚の挨拶。

2005/08/29 (Mon)
　ずっとカブカテキョ。カブカテキョは楽しい。「教える」という仕事が
合っているんだと思う。高校の時からしてるけど、理由が分からない。
夕方に休みモード。横浜まで歩いてきてコミックス購入。そして「AAA=0」。

2005/08/30 (Tue)
　午後までカブカテキョ。そのあとはゆったり。昨日買ったコミックスや、
トリコロ英語版、Sci-Fi HARRYを観たり。９時に JavaA2Z の単語追加して
また仮眠。

2005/08/31 (Wed)
　夜中に死にそうになりながら「Ajaxで」に追加。朝は死ねるレベル。
カブカテキョしまくり。あと Machician やほとはー外伝３。 Java-ZXY を
どうするか。そしてグランドマンボウソファとテレビショッピング。

2005/09/01 (Thu)
　今日はちょっと調子いい。午前中はカブカテキョ、午後はイラスト描き。
「Ajaxで」のトップイメージ。カラーイラストのシークェンスが固まりつつ
あるかも。作業効率悪い。そして「風雅、舞い」読み終えた。

2005/09/02 (Fri)
　１０時起き。午前中はカブカテキョ。午後はバックアップの準備。仕事の
下調べ。相変わらず遅い……。 JavaA2Z のヒット数が上がらない。

2005/09/03 (Sat)
　JavaA2Z 、「Ajaxで」、かぶヘッダー、あさっての更新、 Machician 、
カブカテキョをがーっと。月例バックアップも今晩中に。５日はお休みしま
す。あれもこれもと思うと時間が……。


////////////////////////////////////////////////////////////////////
// かぶろぐ。
http://d.hatena.ne.jp/kab_studio/

2005/08/28 (Sun)
http://d.hatena.ne.jp/kab_studio/20050828
起きたのですが。
だめ。
[アニメ]おねがいマイメロディ 第22話「ママが元気になったらイイナ！」
[アニメ]魔法戦隊マジレンジャー 
　第26話「信じろよ！　〜ジルマ・ジー・マジカ〜」
[アニメ]ゾイドジェネシス 第21話「帰郷」
[アニメ]交響詩篇エウレカセブン 第19話「アクペリエンス・2」
[アニメ]絶対少年 第14話「拮抗する二つの力」
[アニメ]ふしぎ星の☆ふたご姫 
　第22話「生意気アルテッサ☆ピンチでいやいや〜ん」
[ほとはー]ほとはー外伝３ P.31
[Prog]ぷらとわ追加。
縮刷版を更新。
まぐまぐ自費出版

2005/08/29 (Mon)
http://d.hatena.ne.jp/kab_studio/20050829
起きましたよ。
[アニメ]ぱにぽにだっしゅ！ 第9話「八歳の翁 百歳の童」
帰ってきた。
トリコロ英語版が来る！
[買]今日買ってきたコミックスとか。

2005/08/30 (Tue)
http://d.hatena.ne.jp/kab_studio/20050830
起きたけどー。
[買]トリコロ英語版来る！！
[アニメ]ガン×ソード 第9話「カルメン故郷に帰る」
[買]昨日買ってきたコミックスとか。
[アニメ]Sci-Fi HARRY
[JavaA2Z]単語追加。

2005/08/31 (Wed)
http://d.hatena.ne.jp/kab_studio/20050831
眠すぎる。
[アニメ]攻殻機動隊 S.A.C. 2nd GIG 第20話「敗走」
[アニメ]かみちゅ！ 第8話「時の河を超えて」
実家からCDも送ってもらったんだが。
[買]まんがタイムきららMAX
[食][自炊][内臓脂肪][おでんダイエット]お金のかからない美味しい食事
[アニメ]ケイタク「少しだけ……」のアニメ

2005/09/01 (Thu)
http://d.hatena.ne.jp/kab_studio/20050901
起きた。
[アニメ]極上生徒会 第22話「極上札戦闘」
「Ajaxでエロゲーを作るブログ」トップイメージ更新
ITmediaが死ぬほど使いにくくなった。
[JavaA2Z]単語追加。

2005/09/02 (Fri)
http://d.hatena.ne.jp/kab_studio/20050902
そして起きた。
[アニメ]ぺとぺとさん 第8話「サマーキャンプ」
[アニメ]苺ましまろ 第6話「真夏日」
コンビニで買えるスターバックスラテ発売
[JavaA2Z]単語追加。

2005/09/03 (Sat)
http://d.hatena.ne.jp/kab_studio/20050903
[アニメ]ふしぎ星の☆ふたご姫 第23話「運命の種☆なかよしプリンセス!?」
[アニメ]絶対少年 第15話「アーバンフォークロア」
[JavaA2Z]単語追加。
「ハリケーン『カトリーナ』」義援金の受付について
Fate/stay night 2006年度 カレンダー


////////////////////////////////////////////////////////////////////
// Ajaxでエロゲーを作るブログ
http://d.hatena.ne.jp/AjaxEroge/

2005/08/28 (Sun)
http://d.hatena.ne.jp/AjaxEroge/20050828
（記事無し）

2005/08/29 (Mon)
http://d.hatena.ne.jp/AjaxEroge/20050829
[JavaScript][XML][ゲーム]XML1つに複数page。

2005/08/30 (Tue)
http://d.hatena.ne.jp/AjaxEroge/20050830
[JavaScript][XML][ゲーム]Shellによるデバッグのテスト。

2005/08/31 (Wed)
http://d.hatena.ne.jp/AjaxEroge/20050831
（記事無し）

2005/09/01 (Thu)
http://d.hatena.ne.jp/AjaxEroge/20050901
[キャラ][CG]トップイメージ更新

2005/09/02 (Fri)
http://d.hatena.ne.jp/AjaxEroge/20050902
[JavaScript][XML][ゲーム]XML内にエレメントがない場合の処理。

2005/09/03 (Sat)
http://d.hatena.ne.jp/AjaxEroge/20050903
[CSS]スタイルシートで背景とキャラを重ねる。


////////////////////////////////////////////////////////////////////
// 風雅、舞い
http://www.kab-studio.biz/Novel/Fuga/index.html

■　第十二章　超越する存在　−２７−

「くっそー、全勝は無理かな……」
　ソファでぐったりとする雅樹を、舞は睨む。
「何言ってんのバケモン」
　舞はずっとふてくされていた。
「バケモンゆーなって言ってるだろ」
「バケモンはバケモンよ。勝てると思ったのになー！！！」
「私の真似したのに勝てないなんて」
　一緒の部屋にいるリシュネは舞に嫌みを言う。
「真似じゃないって」
「真似だよ。水球で自分を守ったり、ネット状の攻撃をしたり」
　少年もリシュネに乗る。
「う……」
「仕方ないですよ、朴さんは不死身なんですから」
　俊雄がフォローする。
「不死身だけどよー、内臓がないぞう？」
「……」
「あーちょっと気分良くなってきた。おーい、ステーキ持ってこーい！！」
「言ったら出てくるの？」
「さあ」
「ねえ、あの血液と体液だけになった時に、蒸発させたりできなかったの？」
「あの状態じゃ無理。私の力は、気体から液体へは移しやすいんだけど逆は
かなりの力が必要だから」
「それでも関係ねーよ。俺の意識、実際は脳みその中にないんだから」
「へ」
　全員が雅樹の方を向く。
「俺の心も穂香と同じ状態なんだろうな、その心で体を動かしてるってだけ
なんだ。だからどんな状態でも術は使える」
「それ、卑怯すぎ」
「……それ、人間じゃないんだよね」
　リシュネの率直な感想。
「だな。泉のせいでこうなったんだが、洗礼とは関係ないだろうから、俺達
はイレギュラーなんだろ」
「……」
　少年は、憮然とする。
　自分は、特別ではなかったのか。
　と、智子から声が掛かる。
「焼き方は？」
「ウェルダンで」
                                                              (続く)


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
「ここ、日本！？」
　その光景に、紫恋は目を見張った。
　オープンタイプの三層建築、その各階や地上には物と人が溢れかえり、喧
噪が空間を埋め尽くしていた。

Machician 第１０話 HACの窟 連載開始
[ Machician ]
http://d.hatena.ne.jp/kab_studio/20040823#1093276416
[ Machician＋設定 最新一覧 ]
http://d.hatena.ne.jp/kab_studio/searchdiary?word=*%5BMachician
_______________________________________________________________[KCM]

////////////////////////////////////////////////////////////////////
// JavaA2Z
http://www.kab-studio.biz/Programing/JavaA2Z/index.html

■追加・更新単語

ヘッダー
HEAD
リクエストパラメーター
URLEncoder
URLDecoder
doGet
HttpServlet
レット
doPost
入力フォーム
HttpServletRequest
セキュリティホール
脆弱性
クロスサイトスクリプティング
XSS
サニタイジング
サニタイズ


////////////////////////////////////////////////////////////////////
// #pragma twice
http://www.kab-studio.biz/Programing/PragmaTwice/index.html

　Version 15.22
「プロジェクトの設定」コンパイル編(2)

「ごめんなさい」
『何いきなり！？』
「前回、【プリプロセッサの定義】では【#define AAA 0】のような数値や
文字列の定義には使えない、と説明しました」
『……できるの？』
「できました。たとえば【AAA=100】とすると、【#define AAA 100】と同じ
意味になります」
『おお』
「複雑なマクロとかは無理だけど、整数リテラルや文字列リテラルの代わり
として定義することはできます。指摘してくださった方、ありがとうござい
ます」
『ありがとねー！！　ってゆーかダメじゃん！』
「ごめんなさい」
『はいはい。で、今回は？』
「今回は、前回の続き【プロジェクトの設定】ダイアログについて説明しま
す」
『前回は【C/C++】の【オプション】までね。まだ半分終わってないのが怖
いね……』
「前回は下の【プロジェクト オプション】の説明もしたからね。ではさっ
そくいきます」
『はーい』
「【コード生成】ページは、プログラムをコンパイルして
オブジェクトファイルにする時に、どういう形式にするかの説明。最初の
【プロセッサ】は、 CPU の設定」
『 CPU って、 Intel とか AMD とかの？』
「ううん、それはそうなんだけど、そういう違いじゃなくて、バージョン
の違い。【80386】ってあるでしょ、これなんかはかなり古い CPU 」
『へー、聞いたことない』
「デフォルトの【ブレンド】は特に指定しない場合。普通はこれでいいか
な。次の【使用するランタイム ライブラリ】は、ランタイムライブラリの
種類の指定」
『ランタイムライブラリにいろんな種類があるの？』
「〈ランタイムライブラリ〉そのものはひとつだけど、ビルドしたあとの、 
DLL がいくつもバージョンがあるんです」

・シングルスレッド
・マルチスレッド
・マルチスレッド(DLL)
・シングルスレッド(デバッグ)
・マルチスレッド(デバッグ)
・マルチスレッド(DLL、デバッグ)

『マルチスレッドは Version 14.01 ( No.268 ) のだよね』
「そう、あのマルチスレッド。実は、ランタイムライブラリは
グローバル変数を使っている箇所が多いんです」
『んー、それってマルチスレッドだと問題ある？』
「あるでしょ、同期取らなきゃ」
『あ！　そっか、いろんなとこからアクセスされるから、同期取らないと変
になっちゃう！』
「マルチスレッド版はその処理がされてるってこと。その分ちょっと遅いけ
ど、それでもマルチスレッド版だけ使えばいいかな」
『デバッグはそのままデバッグ版ね』
「ランタイムはソースコードがあるから、ステップインでランタイムの中ま
で追っていけるんです。だからデバッグ時にはデバッグ版がいいかな」
『あとは DLL かそうじゃないか、ね』
「〈そうじゃない場合〉はスタティックリンクライブラリになります。これ
は、基本的には以下のどちらかにすればいいかな」

・マルチスレッド(DLL)
・マルチスレッド(DLL、デバッグ)

「ただ、【一般】-【Microsoft Foundation Class】で【MFC のスタティック 
ライブラリを使用】を選んだ場合には、ランタイムを DLL にすると
ランタイムの方の DLL は配布しなきゃいけないから、そういう時は」

・マルチスレッド

「がいいかな」
『配布する DLL ってなんて名前？』
「 MVSCRT40.dll 。だから、実際に配布するなら MFC42.dll とこれ、ペア
で配布する必要があります」
『これもたいがいのに入ってる？』
「うん、今のほとんどの Windows には入ってるだろうから気にしなくてい
いと思うよ。次の【呼び出し規約】は」
『はい！　これは知ってます！　普通の関数は __cdecl で、
コールバック関数は __stdcall なんだよね』
「 Version 8.01 ( No.143 ) とかで説明したね。基本的に、 Exe の中で呼
び出す関数は __cdecl 、 DLL とかから呼び出される関数は __stdcall を
付けます」
『ここで __cdecl を設定しているから、デフォルトは __cdecl なんだね』
「そういうこと。で、外から呼び出す関数は、 __stdcall を付ければいい
わけ。実際には、 WINAPI がそうだからこれを付ければいいかな。最後の
【構造体メンバのアライメント】は、 Version 12.11 ( No.234 ) で説明し
た、パディングとアライメントの話」
『あ、そういえばこの時にもこの設定って教えてもらったね』
「ここで問題になるのは、構造体をそのままファイルに保存するような場合
かな。そういう場合、プログラムをバーションアップさせる時とかに、誤っ
てこの設定を変えちゃったりすると」
『前のファイルが読み込めなくなる！』
「っていうことが起きちゃうんです。だから特に必要じゃなければ、
デフォルトの【8】のまま固定がいいかな」
『そんなことでバグ出すの嫌だもんね……』
「次のページ、【ファイル リスティング】は、プログラムについての
別ファイルを出力するための設定」
『別ファイル？』
「最初の【ブラウザ情報を生成する】については、あとで【ブラウザ情報】
タブの解説をする時に説明します」
『あ、それってこの前も言ってたね』
「前回、 Version 15.21 ( No.322 ) のだね。ちなみにこれとその設定は
全く同じもの。だからどっちかをオンにすると」
『もうひとつもオンになる！』
「両方とも共通のオプションを使ってるからね。下にある
【リスティング ファイル タイプ】は、【リスティングファイル】ってい
う、関数についての本当に細かい情報が書かれたファイルを出力するため
のもの。たとえば【ソースコードを含む】にして、その下の
【リスティング ファイル名】を /Debug のままにすると、
/Debug/Main.asm っていうファイルが出力されます。たとえば、この中の
WinMain()の箇所を抜き出すと……」

PUBLIC    _WinMain@16
;    COMDAT _WinMain@16
_TEXT    SEGMENT
_WinMain@16 PROC NEAR                    ; COMDAT

『うわ、目眩がしそう……』
「これは、プログラムをコンパイルした後の【アセンブラ】っていう言語で
書かれたもの。でもこれはかなり上級者向けだから、とりあえず必要ないか
な」
『うん、これは難しそう……』
「次は【プリコンパイル済みヘッダー】。これは結構重要です」
『え、そうなの？』
「これまで出てこなかったけど、はまるとコンパイルが通らなくなるから」
『う、それは怖い……』
「えっと、今まで BuildTest で説明してきたけど、ここだけは MFC の
プロジェクトがいいので Version 11.01 ( No.201 ) の時に作った
StringTest プロジェクトみたいに、 MFC ベースのプロジェクトを開いて
ください」
『ほい、開いて、この設定も開いてと……あ、設定が違う』
「まずはその辺と、ファイルの意味から説明しようか。【プリコンパイル
済みヘッダーファイル】というのは、拡張子が .pch のファイルのことで
す」
『あ”！！　そのファイル、いっつもすんごくでっかいファイル！！』
「そう、 5MByte くらいのサイズになる大きなファイルです。これは
【プリコンパイル】、つまりコンパイルの前段階の処理をしてある
ヘッダーファイルを集めたものです」
『ヘッダーファイルの集まり？』
「 Win32API や MFC には、膨大なヘッダーファイルが存在します」
『うんあるね』
「コンパイル時にはこれらのファイルを読み込むわけですが、その際、毎回
#define マクロとかの処理をしていたら大変です」
『だから、先に全部しておいちゃおう、ってこと？』
「そういうこと！　そういう処理を先にしてあるファイルがこの .pch 
ファイルです。コンパイル時にこのファイルを使用することで、コンパイル
の時間が早くなります」
『へー』
「一番上の【使用しない】だと、この処理をしないので毎回のコンパイルが
時間掛かります」
『さっきの BuildTest は、2番目の【自動的に使用】だったね』
「この【自動的に使用】はうまくいかない場合が多いので、実際には下の
ふたつを使い分けます」

・プリコンパイル済みヘッダー ファイル(pch)の作成
・プリコンパイル済みヘッダー ファイル(pch)を使用

『使い分ける？　状況に応じて、ってこと？』
「ううん、ソースファイルに応じて。左のツリーの中の、【Source Files】
の中を開いて、それぞれの .cpp ファイルを見てみて」
『……あ！　StdAfx.cpp だけ【作成】で、それ以外は【使用】だ！』

・プリコンパイル済みヘッダー ファイル(pch)の作成
　→StdAfx.cpp
・プリコンパイル済みヘッダー ファイル(pch)を使用
　→StringTest.cpp
　　StringTestDlg.cpp

「ここで、その StdAfx.cpp を見てみて」
『 StdAfx.h をインクルードしてるだけだね』
「その StdAfx.h は？」
『いろんなヘッダーファイルをインクルードしてる……！』
「そう、 StdAfx.h は、プロジェクト全体で使うヘッダーファイルを
インクルードするためのファイルです」
『そういえば StringTest.cpp や StringTestDlg.cpp もインクルードして
るんだよね』
「この StdAfx.h では、プロジェクト内のヘッダーファイルはインクルード
せず、外部、主に Win32API と MFC のヘッダーファイルをインクルードし
ます。これらのファイルは滅多に変更されないから」
『プリコンパイル済みヘッダーファイルのにするのにもってこい』
「ってこと。というかそういうファイルを集めている、ってことかな。そこ
で、 StdAfx.cpp は【作成】し、これを他の cpp ファイルから【使用】す
るわけです」
『なるほど！』
「これまで StdAfx.cpp や StdAfx.h の意味が分からなかったかもしれなけ
ど、このプリコンパイル済みヘッダーファイルを作るためのもの、ってこと
なんです」
『そのための？』
「そう、そのためのファイル。こうして、滅多に変更されない
ヘッダーファイルを StdAfx.h でインクルードして、プリコンパイル済み
ヘッダーファイルにすることで、コンパイルの時間を短縮するわけです」
『なるほどね……あ、だから、この中で自分のプロジェクトの
ヘッダーファイルをインクルードしちゃだめなんだ』
「滅多に修正されないならいいんだけど、そういうことは少ないし、関係が
複雑になるからやめた方がいいかな」
『だね』
「ま、 MFC のプロジェクトの場合、初期設定をそのまま使えば問題ないだ
ろうけどね。今回の知識が必要になるとしたら、 BuildTest みたいに、 
MFC じゃないプロジェクトを作って、 StdAfx.h 代わりのファイルを使うよ
うな時かな」
『デフォルトが【自動】だったもんね』
「この知識があれば、自分でちゃんと設定できるから。そういうのをしてみ
て理解する、っていうのもいいかも」

/*
    Preview Next Story!
*/
「というわけでまだ続きます」
『長すぎ！』
「これでも結構省略してはいるんだけどね」
『次は残りのC/C++のね』
「う」
『な、なに？』
「というわけで次回」
＜ Version 15.23 「プロジェクトの設定」コンパイル編(3) ＞
『につづく！』
「逆に分量少ないかも」
『……バランス取るの下手……』


////////////////////////////////////////////////////////////////////
/*                          ご注意！！                            */

・このメールを返信しないでください。
・ご意見・ご希望・ご感想は[チョー普通な日記]よりお送りください。
http://www.kab-studio.biz/nikki2/index.html
・購読登録を解除したいときにはこのページで行なってください。
http://www.mag2.com/m/0000012198.htm
・解除は自分で行なってください。
・バックナンバーはこれらのページにあります。
http://backno.mag2.com/reader/Back?id=0000012198
http://www.kab-studio.biz/Freeware/index.html#MailMagazine


////////////////////////////////////////////////////////////////////
/*
    KAB-studio.h
      Weekly Mail Magazine.
      Written by Kaburaya Seiden.
      http://www.kab-studio.biz/Info/MailMagazine/

    (C)KAB-studio 1999 - 2005 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz
*/
////////////////////////////////////////////////////////////////////

