━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　◇◆【５０００部】突破のあの小冊子のノウハウ全貌を一挙公開！◇◆
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■売上【５２億】の上場企業元経営者・嶋津良智が、１８年の経験から
　学んだ知恵を書き上げた渾身の小冊子は、遂に発行【５０００部】突破！

■１月２６日、この小冊子の元になった幻のセミナーが一日限りの復活！

■何人もの【プロ人材】を育て上げた【実証済】のノウハウを学んで、
　あなたも、望んだ成果を手にする最高の人生をスタートさせませんか？

■フォローアップも完璧！嶋津があなたの目標設定を直接サポートします！

　≪人生・仕事の成果を変える戦略的人生設計≫完売必至！お急ぎ下さい！
今すぐクリック⇒http://af1.mag2.com/m/af/0000008658/001/s00000002145004/011
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
////////////////////////////////////////////////////////////////////
/*

    KAB-studio.h


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

    送信日： 2006/03/06(Mon) No.347
    配信数： 1808
    発行元： まぐまぐ ( URL: http://www.mag2.com/  ID: 0000012198 )
*/
////////////////////////////////////////////////////////////////////

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

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


2006/03/06 (Mon)
　#pragma twice ホームページ版にアーカイブ追加！
14.30 スレッドを途中で止める
14.31 スレッドからダイアログに表示する
[ #pragma twice ]
http://www.kab-studio.biz/Programing/PragmaTwice/index.html


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

2006/02/26 (Sun)
　１０時半に起きてアニメ観てカブカテキョ書いてぷらとわ更新して夜に
ラクガキして以上。明日からは作業効率を上げないと……。

2006/02/27 (Mon)
　サブ目覚ましが機能するようになってから１０時前に起きられるように。
午前中はお絵描き。この前のハオシャオと似てる。夕方までカブカテキョ、
夜に JavaA2Z で以上。レギュラーのがこなせたから満足。そして画風。

2006/02/28 (Tue)
　９時半起き。午前中は明日のプレゼンチェックの準備。午後に
カブカテキョ書いてサッカー観て以上。カブカテキョは予測付かない。
収益が入りました。５末までどう凌ぐか。そしてオプション。

2006/03/01 (Wed)
　午前中はカブカテキョ。午後に某専門学校のプレゼンチェック。板書が
……。ホワイトボードをどう使うか。帰りに秋葉原でラホールのカレー。
DS Liteで並んでない？　帰ってからはぐだー。

2006/03/02 (Thu)
　一日死ぬ。体調が最悪モード。夜に少し復活してお絵描き。そして
Google AdSense 潰し。そして板書について。

2006/03/03 (Fri)
　１０時に起きて昨日のアニメのダビングとか感想書きとかお絵描きとか。
カブカテキョ書いて夜は WBC 観つつほとはー外伝３描き。白黒絵にこだわ
れるようになった。 JavaA2Z の単語追加できてない。

2006/03/04 (Sat)
　実家の人達につるみ案内。ファミレスがない。鶴見線海芝浦駅と国道駅を
案内。あとは WBC 観て以上。食べ過ぎ？　そしてオビオイドのない人生。


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

2006/02/26 (Sun)
http://d.hatena.ne.jp/kab_studio/20060226
起きたー。
[アニメ]おねがいマイメロディ 第48話「みんな一緒だったらイイナ！」
[アニメ]ゾイドジェネシス 第46話「瓦解」
[アニメ]轟轟戦隊ボウケンジャー 第2話「竜の略奪者!!」
[アニメ]交響詩篇エウレカセブン 
  第44話「イッツ・オール・イン・ザ・マインド」
[アニメ]タクティカルロア 第8話「落日（テラ）の祭り」
[アニメ]蟲師 第18話「山抱く衣」
[KAB-studio]ぷらとわ追加。
[絵]二人
[KAB-studio][ほとはー]ほとはー外伝３はお休みします。

2006/02/27 (Mon)
http://d.hatena.ne.jp/kab_studio/20060227
起きた。
[絵]水着俯瞰
[アニメ]Fate/stay night 第8話「不協の旋律」
[KAB-studio][JavaA2Z]単語追加。

2006/02/28 (Tue)
http://d.hatena.ne.jp/kab_studio/20060228
起きたー。
[Google AdSense]振込
[アニメ]Canvas2 第20話「マーマレード色の夕暮れ」
[link]発車メロディーなら目も覚める？　山手線目覚まし時計発売
[きらら]まんがタイムきららCarat 2006年4月号

2006/03/01 (Wed)
http://d.hatena.ne.jp/kab_studio/20060301
起きた。
[link]MOTHER3 Amazonで予約開始！
行ってくる。
帰ってきた。
[link]異なるエントリーが表示されてしまう不具合について
[買]今日買ってきたコミックス。

2006/03/02 (Thu)
http://d.hatena.ne.jp/kab_studio/20060302
起きた……。
[アニメ]灼眼のシャナ 第21話「遠ざかる想い」
[アニメ]かしまし〜ガール・ミーツ・ガール〜 
  第8話「見ているだけが……」
[アニメ]IGPX 第19話「タケシ、前へ」
[アニメ]BLUE GENDER COMPLETE BOX 
[link]ニンテンドーDS Lite Amazonに入荷……？
[Tips]RSSTIMES導入
[絵]ぼさぼさ
[link]「知力」、「体力」、「時の運」
  ――「ニンテンドーDS Lite」をゲットせよ
[link]はてなからの過去の通知メールが送信された件について

2006/03/03 (Fri)
http://d.hatena.ne.jp/kab_studio/20060303
起きた。
[アニメ]かりん 第15話「エルダ登場！で　恥ずかしい」
[アニメ]しにがみのバラッド。 第1話「きみのこえ。」(新)
[アニメ]舞-乙HiME 第21話「白き姫、目覚めるとき」
[アニメ]REC 第5話「昼下がりの情事」
[アニメ]SoltyRei 第18話「おかえりなさい」
[アニメ]ノエイン 第20話「モウイチド」
[アニメ]マジカノ 第9話「眠れる王子ってマジですか？」
[絵]スパッツ
[野球]WBC2006 1次リーグ 日本vs中国

2006/03/04 (Sat)
http://d.hatena.ne.jp/kab_studio/20060304
起きた。
[アニメ]ふしぎ星の☆ふたご姫 第48話「最後の宝☆恋するブウモ!?」
[野球]WBC2006 1次リーグ 日本vs台湾


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

（今週はお休みです）


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

■　第十三章　二人の間　−９−

　薄暗い部屋。
　何もない無機質な部屋の中央で、デスクの上のモニターだけが明滅してい
る。
　その前で、子供には大きすぎる本革の椅子に座って、フィオはマウスを操
作していた。
　日本語で書かれた文章を、１ページ0.5秒の速さで読み進める。リズム良
くクリックし、ページを進めていく。
　周りから見れば、到底「読んでいる」ようにはみえない。ページが進む速
さを見れば、子供がパソコンで遊んでいるようにしか見えなかった。
　部屋のドアがスライドし、廊下の光と共にロベルトが入ってくる。
『おい、遊んでんじゃねーぞ』
　ロベルトが雑に頭を撫でると、フィオはおとなしく椅子を降りる。
『研究、大丈夫そう？』
『大丈夫かだって？　まさか』
　自嘲気味に笑いつつ、椅子に座る。娘の温もりが心地よい。
『こんなガキに手を入れるくらいなら、やめちまった方がいいくらいだ』
　画面に俊雄の情報が表示される。
『この人じゃだめなの？』
『ああ、適性はないに等しいな。なんでこんな奴を俺に当てたんだ？　俺は
ゴミ捨て場じゃねぇぞ？』
　そう言いながらも、その表情は言葉ほど失望してはいないように見えた。
『…………』
　フィオは、もう一言、言いたいと思った。
　でも。
『…………？』
『遊んでくるね』
　と言って部屋を出る。
　父親の仕事に口を出さないことは、暗黙の了解になっていた。
　もう二度と、あんなヘマはしない。
「や」
　と、手を挙げて挨拶をしつつ、俊雄が通り過ぎる。
　ドキュメントにあった、被験者の一人。でも、優先順位は低い。それ以前
に適性がない。本来なら被験者に選ばれるはずのない人間。
『…………』
　本当にそうだろうか。頭の中に書き写したドキュメントを読み返してみ
る。
　パパ達は、重要なことを見落としている。
『…………くす』
　ネズミを見つけた猫のように、フィオは笑みを浮かべた。
                                                              (続く)

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

■追加・更新単語

変数宣言
フィールド宣言
定数


////////////////////////////////////////////////////////////////////
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　◇◆【５０００部】突破のあの小冊子のノウハウ全貌を一挙公開！◇◆
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■売上【５２億】の上場企業元経営者・嶋津良智が、１８年の経験から
　学んだ知恵を書き上げた渾身の小冊子は、遂に発行【５０００部】突破！

■１月２６日、この小冊子の元になった幻のセミナーが一日限りの復活！

■何人もの【プロ人材】を育て上げた【実証済】のノウハウを学んで、
　あなたも、望んだ成果を手にする最高の人生をスタートさせませんか？

■フォローアップも完璧！嶋津があなたの目標設定を直接サポートします！

　≪人生・仕事の成果を変える戦略的人生設計≫完売必至！お急ぎ下さい！
今すぐクリック⇒http://af1.mag2.com/m/af/0000008658/001/s00000002145004/011
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
////////////////////////////////////////////////////////////////////
// #pragma twice
http://www.kab-studio.biz/Programing/PragmaTwice/index.html

　Version 16.20
オーバーロードの選択

「まず、前回問題になった点を洗い出してみます」
『コンストラクタか、型変換演算子のオーバーロードか、ってことだったよね』
「そう、この選択は非常に重要です。まず、実際に例を見てみようか。

// Data.h
class CData;

class CData2
{
public:
    // public メンバ変数。
    int m_i;

    // 引数のないコンストラクタ。
    CData2(){}
};

// CDataクラス。
class CData
{
public:
    // public メンバ変数。
    int m_iData;

    // CData2クラスへの型変換演算子のオーバーロード。
    operator CData2();
};


// Data.cpp
#include <Windows.h>
#include <stdio.h>

#include "Data.h"

// CData2クラスへの型変換演算子のオーバーロード。
CData::operator CData2()
{
    return CData2();
}

「ちょっと手抜きして、CData2クラスのメンバ関数はCData2クラス内で定義
しています」
『まぁ何もしてないからいいんじゃない？』
「この例では、CDataクラスにCData2クラスへの、型変換演算子の
オーバーロードを行っています」
『〈CData::operator CData2()〉がそうね』
「この時の使用例は、以下のようになります」

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

#include "Data.h"

int WINAPI WinMain
    ( HINSTANCE p_hInstance
    , HINSTANCE p_hPrevInstance
    , LPSTR p_pchCmdLine
    , int p_iCmdShow
    )
{
    CData cData;
    cData.m_iData = 100;

    // 型変換演算子のオーバーロードを呼び出します。
    CData2 cData2 = cData;
    // CData::operator CData2()

    return 0;
}

「 cData 変数は CData クラスのため、 CData2 クラスにキャストが行われ
るので CData クラスの operator CData2() メンバ関数が呼び出されます」
『型変換演算子のオーバーロード関数が呼び出される、ってわけね』
「さて、この状態で、 CData クラスを持つコンストラクタを CData2 クラス
に追加してみます」

// Data.h
class CData;

class CData2
{
public:
    // public メンバ変数。
    int m_i;

    // 引数のないコンストラクタ。
    CData2(){}
    // CData クラスを引数に持つコンストラクタ。
    CData2( CData &p_rcData )
    {
        OutputDebugString( "CData2( CData &p_rcData )\n" );
    }
};

// CData クラスは同じです。
// Data.cpp ファイルも同じです。

『 CData2 クラスに、 CData クラスが引数のコンストラクタ追加したのね』
「この状態で、先ほどの例を試してみます」

int WINAPI WinMain
    ( HINSTANCE p_hInstance
    , HINSTANCE p_hPrevInstance
    , LPSTR p_pchCmdLine
    , int p_iCmdShow
    )
{
    CData cData;
    cData.m_iData = 100;

    // どっちが使われる？
    CData2 cData2 = cData;
    // CData2( CData &p_rcData )

    return 0;
}

『あ！　今度はコンストラクタの方が呼び出された！』
「このように、型変換演算子のオーバーロードではなく、コンストラクタの
オーバーロードの方が呼び出された、というわけです」
『そうなんだ……それじゃ、型変換演算子の方は必要ない？　あ、でも』

    CData2 cData2 = (CData2)cData;

『とかやったら必要かな？』
「……実は必要じゃないんです。この時も、コンストラクタが呼び出されま
す」
『？？？　それはないでしょ、だってキャストなんだし』
「実は、キャスト時に、コンストラクタが呼び出される場合があるんです」
『……何それ、ちょっと待って』
「たとえば、以下のように、 cData 変数を CData2 クラスにキャストして、
そのメンバ変数の m_i を使用した場合」

int WINAPI WinMain
    ( HINSTANCE p_hInstance
    , HINSTANCE p_hPrevInstance
    , LPSTR p_pchCmdLine
    , int p_iCmdShow
    )
{
    CData cData;
    cData.m_iData = 100;

    // どっちが使われる？
    int i = ( (CData2)cData ).m_i;
    // CData2( CData &p_rcData )

    return 0;
}

『げげげげげ！！　なにそれ、コンストラクタ呼び出されてる！！　
型変換演算子の方呼ばれてないし！』
「実は、キャスト時には〈仮の変数〉を作るという機能があるんです」
『仮の変数？？』
「たとえば、 int 型と double 型」
『 double 型って、 Version 12.03 ( No.226 ) でやった浮動小数点って
ゆーのだよね。あれは複雑だった……』
「仮数部とか実数部とか説明したよね。 double 型は int 型と全然構造が
違うっていうことを思い出して」
『うん、思い出した』
「それを踏まえて……」

    int i = 100;
    double d = (double)i;


「という式を考えてみて。 int 型の i を、 double 型にキャストしていま
す」
『うん、キャストしてる』
「キャストする結果、〈 (double)i 〉は、内部では i の値 100 を double 
型に変換する、という処理が行われます」
『うん、全然中身が違うんだから、新しく作り直し……待って』
「そう、〈 (double)i 〉を行うと、 double 型の変数が新しく作られて、
その中に変換後の 100.0 が格納される、というわけです」
『新しく作られる！　変数が作られる、コンストラクタが呼び出される』
「ということ。この例で無理矢理例えるなら、〈 double::double( int ) 〉
っていうコンストラクタが呼び出されるわけです」
『うわー、キャストでコンストラクタが呼び出されちゃったー！！』
「このように、コンストラクタがキャスト代わりになってしまう場合がある
わけです」
『型変換演算子のオーバーロードの意味がない……』
「でも、もちろんコンストラクタが無ければ意味はあるよ」
『あ、そういえば』
「そして、重要な点は、コンストラクタは【変換先】になきゃいけないけど
型変換演算子のオーバーロードは【変換元】にあればいい、ということ」
『あ、そっか、元々あるクラスだったらコンストラクタ追加できないし』
「そういうこと。そういう使い分けはできるかな」
『でも難しそう……』
「実際、演算子のオーバーロードはとても難しいよ。今の話はコンストラクタ
だけど、 = 演算子のオーバーロードは関係ないでしょ」
『げ、そっか、そっちはキャストしたときには呼ばれないよね』
「でも、コンストラクタと = 演算子のオーバーロードは同じようにしない
と」
『初期化と代入が違っちゃう！』
「他にも、普通の関数にするのかメンバ関数にするのかとか」
『それもあった……』
「というわけで、演算子のオーバーロードはとても面倒なのです」

/*
    Preview Next Story!
*/
『って、そんなもん教えるなー！』
「だったらいいんだけど、使えないと困る場面があるんだよね」
『げ、そうなの？』
「そういう典型を次回は説明します」
『うーん教わりたくない』
「というわけで次回」
＜ Version 16.21 演算子のオーバーロードの実例 ＞
『につづく！』
「それ呼んだ後は STL & iostream 入門をどうぞ」
『宣伝！？　それよりそれも解説してよー』
「それだけで何年かかるか……」


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

・このメールを返信しないでください。
・ご意見・ご希望・ご感想は[チョー普通な日記]よりお送りください。
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 - 2006 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz
*/
////////////////////////////////////////////////////////////////////

