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

    KAB-studio.h


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

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

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

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

2005/05/16 (Mon)
　風雅、舞い ホームページ版にアーカイブ追加！
第五章 変化
[ 風雅、舞い ]
http://www.kab-studio.biz/Novel/Fuga/index.html

2005/05/16 (Mon)
　#pragma twice ホームページ版にアーカイブ追加！
5/16 11.17 コンストラクタとデストラクタを作る！
5/16 11.18 コンストラクタって複雑！
[ #pragma twice ]
http://www.kab-studio.biz/Programing/PragmaTwice/index.html


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

2005/05/08 (Sun)
http://www.kab-studio.biz/nikki2/n17_05a.html#20050508
　１０時起き。ネットが継ながらない。ルータを再起動したら復活。明日の
更新分の更新。 JavaA2Z にバグが。あとはアニメ見まくってダビングし
て。眠いし調子悪いし。

2005/05/09 (Mon)
http://www.kab-studio.biz/nikki2/n17_05a.html#20050509
　昨日は朝５時までバルドフォースエグゼ。午後３時から歯医者。いきなり
新宿へ行って、新宿から秋葉原まで散歩（爆）。意外とあっさりと、２時間
で踏破。ラホールのカレー。

2005/05/10 (Tue)
http://www.kab-studio.biz/nikki2/n17_05a.html#20050510
　１０時に起きてコインランドリー、その間にハローワークで検索。
プログラミングのバイトは少ないけどフルタイムは多い。午後はあまかい作
り。明日失業認定日だから徹夜する。今月後半は遊びまくる（爆）。仕事に
ついてはもう少し考えてみる。

2005/05/11 (Wed)
http://www.kab-studio.biz/nikki2/n17_05a.html#20050511
　徹夜。朝６時まであまかい作り。吐き気が……精神的に弱い？　９時に
ハローワークへ。キャンセルが必要だった……。次回もあるらしい。９時半
前には家に着いて１１時半まで寝る。はてなダイアリーのバージョンアッ
プ。あまかいのPR層まわり。時々落ちる。そして時給。

2005/05/12 (Thu)
http://www.kab-studio.biz/nikki2/n17_05a.html#20050512
　１０時半起き。セブンイレブンで鯖寿司。あまかいの検索機能作成中。
ページング処理。製造サイクル。検索ができたらリリースします。今日も
明日もあさってもあまかい作り。

2005/05/13 (Fri)
http://www.kab-studio.biz/nikki2/n17_05a.html#20050513
　今日もあまかい作り。 XML のパーシングに手間取る。検索機能までは
できました。明日までにシステムだけでも作るはずだったんだけど無理そう
……。 Amazon の検索機能がネック。今年中に１日数万ヒットするページに
なって欲しい。

2005/05/14 (Sat)
http://www.kab-studio.biz/nikki2/n17_05a.html#20050514
　１０時起き。１２時からあまかい作り……でも問題があってあまり進ま
ず。かなり作らなきゃいけない処理が残ってる。とにかく早く終わらせて
就職活動に専念する。


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

2005/05/08 (Sun)
http://d.hatena.ne.jp/kab_studio/20050508
ネットにつながらない
復帰！
女優の横山智佐さん、因縁つけられを顔面殴られる
[アニメ]ゾイド ジェネシス 第5話「決闘」
[アニメ]おねがいマイメロディ 第6話「昔にもどれたらイイナ！」
[ほとはー]ほとはー外伝３ P.17
[アニメ]魔法戦隊マジレンジャー 第13話「お母さんなら」
風雅、舞い追加。
[Prog]ぷらとわ追加。
[JavaA2Z]単語追加。
[アニメ]交響詩篇エウレカセブン 第4話「ウォーターメロン」
[JavaA2Z]バグ修正。
鶴見スポーツセンター
[アニメ]まほらば 第19話「みんなの一日」

2005/05/09 (Mon)
http://d.hatena.ne.jp/kab_studio/20050509
起きた。
[買]まんがタイムきらら
歯医者行ってきます。
行ってくる。
到着！
帰ってきた。
[JavaA2Z]Amazonアソシエイト。
はてなRSS
[JavaA2Z]単語追加。
ANAフィギュアを欲しい人が並ぶ！並ぶ！
[病気治療]歯医者。
[JavaA2Z]とは。
[Machician]第７話 灰色の鬼、白き翼 (1)

2005/05/10 (Tue)
http://d.hatena.ne.jp/kab_studio/20050510
起きてる。
[辞職]ハローワーク。
[JavaA2Z]単語追加。
[アニメ]勇者王ガオガイガーFINAL 第5話「心‐animus-」
[アニメ]こみっくパーティーRevolution 第6話「塚本印刷を救え!ですの」 
[Machician]アーカイブ追加。
[あまかい]Amazonトップ100は取得できないらしい。
[あまかい][Prog]ダメっぽい……。
[あまかい][Prog]トップ100はクライアントによって異なるらしい。
う。
[Machician]第７話 灰色の鬼、白き翼 (2)

2005/05/11 (Wed)
http://d.hatena.ne.jp/kab_studio/20050511
オハヨウ！
[あまかい]超とりあえずスタート。
[あまかい]修正・製造予定。
そろそろ行ってきます。
帰ってきました。
[辞職][教職]失業認定日 3回目
寝て起きた。
[JavaA2Z]単語追加。
はてなダイアリーのバージョンアップ
[Tips]CSS修正。
table記法
[アニメ]焼きたて!!ジャぱん 第29話「迫撃!! ブラックジャぱん誕生!」
やば。
[JavaA2Z]マイナーバージョンアップ。
[あまかい]トップページの体裁をきれいに。
[アニメ]魔法学園ネギま! 第19話
[アニメ]極上生徒会 第6話「大恐怖！プッチャンの呪い」
[Machician]第７話 灰色の鬼、白き翼 (3)

2005/05/12 (Thu)
http://d.hatena.ne.jp/kab_studio/20050512
[食]起きてます。
[JavaA2Z]単語追加。
つか。
[あまかい]検索だけなら簡単だと思ったんです。
[Machician]第７話 灰色の鬼、白き翼 (4)

2005/05/13 (Fri)
http://d.hatena.ne.jp/kab_studio/20050513
起きたよ。
くっ、やられた！！
[あまかい]やっとXMLパーシングのテスト完了……。
[病気治療]歯医者。
[あまかい]「すべての商品」からの検索をやめる（爆）。
[あまかい]検索機能実装！
祝！！　……あれ？
[JavaA2Z]単語追加。
[あまかい]アイコン作って以上。
[Machician]第７話 灰色の鬼、白き翼 (5)

2005/05/14 (Sat)
http://d.hatena.ne.jp/kab_studio/20050514
起きたの。
[アニメ]学園アリス 第26話（最終回）「友情は☆エンドレス」
最近IEが不安定。
[アニメ]ふしぎ星の☆ふたご姫 第7話「お城に帰れな〜い！☆ここほれラビラビ」
[あまかい][Prog] mod_rewrite でセッションが切れる？
[JavaA2Z]単語追加。
西武負けたのか……。


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

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

「俊雄君、学校どうするの？」
「どうするもなにも、連休だけど」
「えっ！？」
　舞はカレンダーを確認する……にも、機内にはカレンダーは掛かっていな
かった。
「３連休だよ。日付感覚なくなってるんじゃないか？」
「……」
　舞はふてくされて外を見る。眼下には雲海、見上げれば青空。昼過ぎには
到着するはずだった。
「そういえばお前、なんで来たんだ？　社会見学には思えないが」
　雅樹が俊雄に話を振る。
「社会見学ですよ。舞さんがどういう世界にいるのか知っておきたくて」
「で、こっちの世界に来ようっていうのか？　どうせおおかた、ＡＰにでも
なろうって考えなんだろ」
　その言葉に反応して舞が振り向く。
「ＡＰって……」
「無理。属性がないとなれない」
　リシュネが説明する。
「ＡＰは誰でもなれるものじゃない。ＡＰの種が根付くか根付かないかは、
人それぞれ異なる」
「リシュネ達は？」
「私達は何万というサンプルの中から『属性が合う』から選ばれたの。運が
良かっただけ」
「本当か？　それ」
「一応、ね」
　リシュネは視線を逸らす。
「だとよ。どうする？」
「……僕は何も答えてないんですから、話を進めないでください」
　という俊雄の憮然とした表情が、全てを物語っていた。
「ＡＰになろうだなんて……」
　舞は、あきれてものも言えなかった。
　やっぱり、腕を斬り落とすんだった。
                                                              (続く)


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
　背筋が、凍った。
　シーバリウは、石の方を見る。
　紫恋の泣き声に応えるように、石が縦に割れる。
　中から、朱色の、玉。
　シーバリウの目が見開く。
「！！」
　たとえようもない、恐怖。

Machician 第７話 灰色の鬼、白き翼 好評連載中！
[ 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

■追加・更新単語

<演算子
<=演算子
>演算子
>=演算子
<
<=
>
>=
printStackTrace
標準エラー出力
System.err
getter/setter
getter
setter
アクセサー
?演算子
:演算子
?
:
三項演算子
if
else
do
Identifier
識別子
バイアス
プロトタイプ
パラメーター
&演算子
&
|演算子
|
||演算子
||
ビットフラグ
フラグ
^演算子
^


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

　Version 15.07
スタティックリンクライブラリと DLL

「ヘッダーファイルの話の次は、ライブラリの話です」
『ライブラリ、って MFC とかランタイムとかそういうののこと？』
「そう、それを使ったり、自分で作る時の話」
『使うのはできるけど、作るのはできないかな』
「使うのもできないでしょ、 MFC とランタイムしか使えないんだから」
『どゆこと？』
「インターネットに落ちてる DLL とかって使える？」
『う…… DLL を System フォルダに置く、とかはわかるけど、プログラム
で使うのはできない……』
「今回からはその説明。 DLL を自分で作って自分で使う、ってところまで
説明します」
『なんか本格的……』
「というわけで、まず【ライブラリ】について」
『ライブラリって、ランタイムもそうだし、 API とか MFC もそうなんだよ
ね』
「そう、 Version 2.14 ( No.025 ) でやったね。ものすごく単純に言う
と」

・プロジェクト外のプログラム

「がライブラリです」
『プロジェクト外……』
「そういうこと。もう少し突き詰めると」

・すでに他のプロジェクトでコンパイルされたプログラム集

「かな」
『コンパイル済み？』
「そう。自分のプロジェクトだと、そのままコンパイルしちゃうでしょ」
『そか、自分のプロジェクトのじゃない他のプロジェクトのプログラムは、
そのプロジェクトでコンパイルされていないといけない……』
「そう、つまり、コンパイルだけしてリンクはまだの、
【オブジェクトファイル】のような形にしたものってこと」
『オブジェクトファイルって Version 15.01 ( No.301 ) のだよね。そ
か、コンパイルだけして、そのあとくっつけるとこはまだ、ってことなん
だ』
「そう、それがライブラリ。そして、そのライブラリには２種類あります」

・スタティックリンクライブラリ
・ダイナミックリンクライブラリ（ DLL ）

『あ、ここで DLL が出てくるんだ。 DLL ってこの略なんだ……』
「 Dynamic-Link Library 、略して DLL 。かといって
スタティックリンクライブラリを SLL とは略さないんだけどね」
『不公平ー』
「というか、あまり使われないんだよね、スタティックリンクライブラリ
は」
『使われない？』
「というわけで、ここでふたつの違いを見ておきます」

・スタティックリンクライブラリ
　リンク時に exe に埋め込まれる。

・ダイナミックリンクライブラリ（ DLL ）
　実行時に exe と結び付けられる。

『スタティックリンクライブラリはリンク時で、 DLL は実行時、ってこ
と？』
「そういうこと。ちなみに〈スタティック〉には〈静的な〉、
〈ダイナミック〉には〈動的な〉っていう意味があります」
『静的なリンクと動的なリンク……』
「そこでさっそく、スタティックリンクライブラリを作ってみましょう」
『え、もう？』
「試してみた方が分かりやすいからね。まず、 Visual C++ ふたつ実行し
て」
『ふたつも？』
「そう、ライブラリを作るときには、ひとつは使う方のプロジェクト、
もうひとつはライブラリ側のプロジェクト、という形でふたつ同時に開く方
が楽だから」
『なるほど、別々のプロジェクトだから、それぞれ開くわけね』
「実行した Visual C++ のうち、ひとつはこれまでと同じ BuildTest 
プロジェクトを開いて」
『ほい』
「もうひとつの方で、スタティックリンクライブラリを作ります。まず
メニューの【新規作成】ダイアログで【プロジェクト】タブを開いて、
【Win32 Static Library】を選択して、プロジェクト名は SLLTest で」
『普通にプロジェクト作るのとほとんど同じね』
「次に出てくるダイアログは無視して、そのまま完了」
『ほい、準備できた』
「この状態だと、まだソースファイルはありません。そこで、 BuildTest で
作ったものをそのまま流用します」
『流用？』
「 BuildTest のワークスペースの【FileView】タブを開いて」
『ほい』
「【Source Files】に Sub.cpp が、【Header Files】に Sub.h があるで
しょ」
『うん、作ったのだね』
「これを Delete キーで削除して」
『え！？　削除していいの？？』
「うん、ファイルは削除されないから」
『そういうこと……プロジェクトから削除、ってこと？』
「そういうこと。このふたつを削除することでプロジェクトから取り除きま
す。そして、残った Main.cpp をこうします。」

// Main.cpp
#include <Windows.h>

#include "Sub.h"

int WINAPI WinMain
    ( HINSTANCE p_hInstance
    , HINSTANCE p_hPrevInstance
    , LPSTR p_pchCmdLine
    , int p_iCmdShow
    )
{
    Test();
    return 0;
}

『関数ひとつ呼ぶだけね。 Typedef.h はどうするの？』
「それは特に何もしなくていいや。次に、 BuildTest のプロジェクト
フォルダにある Sub.cpp と Sub.h を、さっき作った SLLTest の
プロジェクトフォルダに移動して」
『移動でいいんだね』
「 BuildTest にはもう要らないから。逆に言うと、これまでの例での、 
Sub.cpp にあった関数をライブラリとして外に出す、っていう例でもある
し」
『なるほど、今こうして Sub.cpp を SLLTest に移してるわけだ』
「移動したら、SLLTest のワークスペースの【FileView】タブを開いて、
【Source Files】で右クリック、メニューの【ファイルをフォルダに追加】
を選んで」
『ほい。ファイルダイアログ出た。 Sub.cpp を選ぶの？』
「そう、 Sub.cpp を選んで。さらに【Header Files】で同じように Sub.h 
を選択して」
『ほいほい。これで BuildTest の時と同じようにプロジェクトに取り込ま
れた、ってこと？』
「そういうこと。自動的に Sub.cpp もコンパイル対象になったから。その 
Sub.cpp はこういうふうにして」

// Sub.cpp

#include <Windows.h>
#include "Sub.h"

void Test()
{
    OutputDebugString( "テスト\n" );
}

『これが呼び出す関数ね』
「 Sub.h はこう」

// Sub.h

void Test();

『うんうん、普通の感じね』
「これでビルドして」
『え？　SLLTest だよね、できちゃうの？』
「できちゃうんです」
『へぇ……うん、じゃあビルドっと』

コンパイル中...
Sub.cpp
ライブラリを作成中...

SLLTest.lib - エラー 0、警告 0

『 exe じゃなくて、 SLLTest.lib ってのが作られるんだ』
「これがスタティックリンクライブラリの本体です」
『へ、本体？』
「そう。この中に Test() 関数の中身とかが入ってるんです」
『この中に……』
「さて、このスタティックリンクライブラリを BuildTest 側で使ってみま
す。まず、ヘッダーファイル Sub.h を見られるようにします」
『それができないと、関数があるって分からないんだもんね』
「ちなみに、別に見られなくても構いません」
『……それって、 Main.cpp の中に Test() 関数の宣言書いちゃうってこ
と？』
「そういうこと。もちろんそんなことをすると、 SLLTest 側で関数を修正
したりした時にもう一度コピペしなきゃいけないから面倒」
『だから見られるようにするわけね』
「あ、その前に、 SLLTest プロジェクトのフォルダ、つまりさっき 
Sub.cpp と Sub.h をコピーした、 SLLTest.dsw ファイルのあるフォルダの
フルパスを以下のフォルダとします」

D:\Program\SLLTest

「みなさんはそれぞれ違う環境でテストしていると思いますので、その環境
ごとに読み替えてください」
『はーい』
「以上を踏まえて、 BuildTest のメニューの【プロジェクト】-【設定】
ダイアログを開いて」
『このダイアログっていっぱい書いてあってわけ分かんないんだよね……』
「【C/C++】タブの【プリプロセッサ】ページを開いて」
『プリプロセッサって、 #include とかマクロとかのだよね』
「そう、そのプリプロセッサ。その【インクルードファイルのパス】に

D:\Program\SLLTest

「を書いて」
『さっきのそのままだね』
「これは Sub.h の置いてある場所。これでコンパイルは通るよ」
『……コンパイルは通る、ってことは、リンクでエラーになるってこと？』
「そういうこと」
『……意地悪』
「えーっと……じゃあリンクの方も、ね。【リンク】タブの
【追加ライブラリのパス】に」

D:\Program\SLLTest\Debug

「を書いて、さらに【オブジェクト/ライブラリ モジュール】にいっぱい書
かれている .lib ファイルの一番右端に、半角スペースを挟んで 
SLLTest.lib を書いて。そうしたら」
『んじゃビルドして実行！　うん、アウトプットウィンドウに〈テスト〉
って出た！』
「これでスタティックリンクライブラリが使えたってわけ」

/*
    Preview Next Story!
*/
『な、なんかちょっとよくわからなかったかも……』
「というわけで次回はスタティックリンクライブラリの仕組みについて」
『おおー』
「ま、スタティックリンクライブラリは簡単だけどね」
『そなの？』
「それに比べて DLL は…… DLL は……」
『うわなに暗！』
「というわけで次回」
＜ Version 15.08 スタティックリンクライブラリの仕組み ＞
『につづく！』
「ま、そのおかげでヒット数高いんだけどね」
『何の話？』


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

・このメールを返信しないでください。
・ご意見・ご希望・ご感想は[チョー普通な日記]よりお送りください。
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
*/
////////////////////////////////////////////////////////////////////

