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

    KAB-studio.h


    (C)KAB-studio 1999 - 2001 ALL RIGHTS RESERVED.
        http://www.kab-studio.com/
        info@kab-studio.com

    送信日： 2001/04/09(Mon) No.102
    配信数： 3840（ Mag2 + Pubzine ）
＊    発行元： まぐまぐ( URL: http://www.mag2.com/  ID: 0000012198 )
＊    発行元： Pubzine( URL: http://www.pubzine.com/  ID: 590 )
*/
////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////
/*                ２００１年４月９日（月）の更新                  */
http://www.kab-studio.com/

・KAB-studio.h 縮刷版更新
　 KAB-studio.h が１００号に達したので、いつも通り縮刷版を更新しま
す。これをダウンロードして grep で必要な情報を探し出しましょう。ダウ
ンロードはダウンロードルームにて。
[ ダウンロードルーム#縮刷版 ]
http://www.kab-studio.com/Freeware/index.html#MailMagazine


////////////////////////////////////////////////////////////////////
/*                        チョー普通な日記                        */
http://www.kab-studio.com/nikki2/

2001/04/01 (Sun)
　ほとんどすべてアニメの話(爆)。ヤバイ人だ……。壽蘭、コメットさん、
そしてエンジェリックが良かったかな。チテレの攻勢……はチテレに限った
ことじゃないことがあとで判明。あと禁断のエイプリルフールネタ？　そし
て爆笑オンエアバトルチャンピオン大会決勝！

2001/04/02 (Mon)
　鏑矢正伝、社会人になる。手始めに会社についてのお話を聞く。なんか手
続きとか面倒……。そして MacWire でエイプリルフールネタ！　こーゆー
の好きなのよー。

2001/04/03 (Tue)
　昨日に引き続き会社説明会状態。事業内容とかとか。そして明日から２ヶ
月間は研修。そんな中でも見るものは見る。ハレのちグゥがぶっ飛んでてい
い感じ。

2001/04/04 (Wed)
　今日から稲城本社で研修スタート！　が……基本情報技術者試験は受けら
れないし、模試しただけだし、拍子抜けっすなー。あー早く後半の実践的な
方したい〜。あとしその潤い購入。効くような効かないような……。

2001/04/05 (Thu)
　研修２日目。午前は昨日の復習、午後は予想問題。なんかのんびり勉強し
てく感じ……。いつのまにか３１万ヒットだし。おおっ、シスタープリンセ
スが思った以上に面白い！　ただのダメアニメではなさそうです(爆)。

2001/04/06 (Fri)
　研修３日目。午前は昨日と同じ、午後は自習(爆)。お昼ごはんを探しに隣
の駅に行ったり。そしてやっぱしアニメ。ノワール、クールな演出がいい感
じ。でも？　そしてデ・ジ・キャラットお花見すぺしゃる！！　またもや素
晴らしい出来で感無量ですな。そしてテレ埼がんばる。

2001/04/07 (Sat)
　ウェブ４コマ「三人合体ホットハーブ」の表紙描き。ちょっといまいち？
この４コマはかなりいい感じになる予定なんでがんばってます。あとは例に
よってアニメ新番組、鋼鉄天使くるみやＺＯＥ、逮捕しちゃうぞ。そして、
同期社員ツッコミ第１号！　いつの間にかテレ埼がステレオに〜。


////////////////////////////////////////////////////////////////////
/*                         風雅、舞い                             */
http://www.kab-studio.com/Novel/Fuga/

■　序　−２−

　毎週水曜日にこうして近くの公園に行き絵を描くこと、いつからかそれが
大和高校美術部の主な活動内容になっていた。
「いい日和よねー、なんか眠たくなっちゃう」
「そうかな、ちょっと寒いような気もするけど」
　すぐ近くの水面が、そう感じさせるのかもしれない。暖かいと言った舞が
そう思う。公園の中央にある小さな池を、木の柵と湿り気のある道とが囲
み、公園全体を木々が覆う。
「舞さんは、いつもここに来ると池を見ていますね」
　そして、いつも悲しい瞳をしている……そう付け加えられなかった。
「ずっと前からよ、あたしにも理由教えてくれないし」
「うん……ちょっとあってね、まあ、小さい頃におぼれちゃった、みたいな
感じかな」
「ということは、それよりも恥ずかしいことなのか？」
「そうかもね……あ、アイスクリーム屋さんだー！」
　四人の視線の先に、小さなバンと白いテーブルセットがあった。そこへと
舞は駆けていく。
「子供みたい」
「子供なんじゃないかな」
「子供なんだよ、きっと」
「そこ、うるさいよ！」
「聞こえてたか……」
　三人が着いたときには、舞はもう自分のバニラアイスを頼んでいた。
「こんなのやってるんだ」
「毎年、今ぐらいから秋ぐらいまでね」
「そっかー、俊雄は知らないんだもんね」
　舞を含めた四人が、一つのテーブルに座る。アイスクリームショップの前
には、時々いそうな場違いな男と、ベビーカーを囲んで談笑する主婦達がい
るだけだった。
　もしかしたら、これが公園にいる全員かもしれない。
「そういえばさ、なんで美術部なんかに入ったの？」
「なんかにってことはないでしょ、自分の部に」
「ははは、まあ信吾が誘ってくれたからね」
「だってよ、こいつ治るまで部活休むって言うからさ」
「じゃあ治ったらサッカー部戻っちゃうんだ」
「そりゃそうでしょ、何てったって我が校のエースなんだから」
「エースってなんか野球っぽい言い方」
「そう？」
　舞は、この瞬間を「幸せだなぁ〜」と感じていた。自分自身不思議に思い
ながらも、この春の日和、友達と一緒に何の意味もない無駄話をする幸せ
が、とてもうれしかった。
　何か――良くないことが起きる前兆だったりして。
「これ、なんて言うんだっけ」
　その突然の呼びかけに、舞は振り向いてしまった。
                                                              (続く)


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
『これって禁句かもしんないけど』
「なに？」
『購読登録数、減ったね』
「うわ、それはホントに禁句だね」
『ごめんなさい……』
「ま、本当の事だからしょうがないでしょ。僕はもっと減ると思ってたし」
『確かにねー、プログラミングの記事、激減だもんね』
「でもさ、減ったって事は」
『減ったって事は？』
「それだけの人数は、少なくとも読んでくれてたってことだね」
『……なんかそれってすんごく消極的じゃない？』
「でも、メールマガジンって受動的なものだからそういうの分からないし」
『アンケート！　プレゼント付きで！！』
「アンケート取って、ぷらとわが最下位だったら？」
『やめてもいーじゃん、もういーかげん面倒じゃない？』
「それこそ禁句！！」
http://www.kab-studio.com/
_______________________________________________________________[KCM]


////////////////////////////////////////////////////////////////////
/*                       #pragma twice                            */
http://www.kab-studio.com/Programing/PragmaTwice/


　Version 6.02
コンパイルエラーをなくす！

「さて、今回はコンパイルエラーについて」
『コンパイルしたときに出るエラーで、これはバグじゃないんだよね』
「そうです。そしてまず一番重要なこと。コンパイルエラーは論外！！」
『論外！？』
「そう。前回言ったように、コンパイルエラーの場合には Exe が作られま
せん」
『つまり商品ってゆーか製品ってゆーか、そういうのすらない状態だもん
ね』
「だから、まず〈プログラマー〉と言える最低ラインが、どんなコンパイル
エラーが出てもクリアできること、って言えるかな」
『……それってすんごく大変じゃない？』
「確かにそうかもしれないけど、実際にアプリが作れなきゃ、お話にならな
いでしょ」
『確かに』
「ま、実際大変だけどね。今日は基本的なことだけ。コンパイルエラーの原
因にはかなり色々とあるから、それは少しずつ」
『はーい』
「じゃ、基本的なコンパイルエラーから。一番多いのが書き間違い、つまり
スペルミス」

    iny i = 100; 

『 int が iny ね。でも、 int とかは色が変わるでしょ？』
「そう、 int とか for とか、初めから用意されてる単語は【オプション】
の【書式】で色を変えられるから大丈夫なんだけど」
『ってことは、色の変わらない……変数名とか？』
「変数名が多いかな。途中で変数名を変えたりしたときとか。そういう場合
には、関数全体を選択して、選択範囲内で置換した方がいいかな」
『他に見逃しやすいのは？』
「まず似た形状の文字。 1 （いち）と l （小文字のエル）、 0 （ゼロ）
と O （大文字のオー）とか。特に、本に載ってるのを書き写すときに」
『確かに分かりにくい本って多いよね……』
「あと、いわゆる全角文字。 A をＡって書いたり、半角スペースを全角ス
ペースで書いたり」
『同じアルファベットなのに、ダメなんだ』
「前にやったでしょ、文字は数字」
『 A とＡじゃその数字が違うからダメってことね』
「で、さっきの iny の例だとこれだけエラーが出ます」

error C2065: 'iny' : 定義されていない識別子です。
error C2146: 構文エラー : ';' が、識別子 'i' の前に必要です。
error C2065: 'i' : 定義されていない識別子です。

『うわ、いっぱい』
「 iny のせいで、 i って変数自体が作られないからね。これで分かること
はふたつ。まず〈定義されていない識別子です〉っていう、分かりにくいエ
ラーが出るってこと」
『これじゃなんかよく分かんないね。そのあとの i のとこにも同じエラー
が出てるし』
「コンパイルエラーははっきしいって原因が分かりにくいから。ここではそ
ういう原因の分かりにくいエラーを中心に紹介するからね」
『はーい』
「あと、コンパイルエラーは必ず上から直す、ってことが重要」
『そっか、 iny を直せばあとは全部消えるんだもんね』
「ここでは削除してるけど、エラーが出た行が表示されるし、そこをダブル
クリックすればその行に飛んでくれるから」
『結局は、打ち間違いに気を付けなきゃいけないんだよね』
「そういうわけでもないよ。 VC には〈自動補完機能〉が付いてるから、た
とえば……」

    int iUserDataNo = 100; 

「この iUserDataNo を入力するときには、 iUser くらいまで入力して、デ
フォルトなら Ctrl + スペースキーで単語全体が入力されるから」
『おお！　でも iUser 以前が間違ってたら』
「そのときはうまく補ってくれないから、それで入力が間違ってるって分か
るでしょ」
『あ、そっか』
「あとクラスのメンバ関数とか入力するときも、 . （ピリオド）や -> を
入力すると一覧が出るから」
『それから選べばいいんだ』
「こういった機能を活用すれば、スペルミスはぐっと減るはず」
『なるほど』
「ただ、 ; （セミコロン）と : （コロン）には注意」
『これは分かりにくい！』
「同じ演算子だし、見た目にも似てるし、最悪なのが、キーボードでも隣っ
ていう点」
『打ち間違えたらヤバイね……』
「初めのうちは一番注意した方がいいかも。さて、コンパイルエラーで同じ
く多いのが、型の問題」
『そうそうそう！　ポインタとかうまくいかないことが多いんだけど』
「まず、クラスをメンバ変数として持つクラスの例」

// あるクラス。
class CInner
{
public:
    int m_i;
};

// そのクラスをメンバ変数として持ってみます。
class COver
{
public:
    CInner m_cInner;
}

『さて、ここで COver のポインタを返す関数があったとします』

COver *GetCOver()
{
    static COver s_cOver;
    return &s_cOver;
}

『 static ってやったっけ』
「あ、やってないね。 static っていうのは〈たった一度しか作られない変
数、作られたらずっと残る変数〉にする指定。普通の変数だと、 GetCOver() 
が終了したら」
『なくなっちゃうね。だからこういうふうにポインタを返すのはいけないん
だよね』
「そう。ところが static を付けた変数は、関数が終了してもなくなりませ
ん」
『なくならない？』
「メモリ上にずっと残るってこと。で、次に GetCOver() が呼ばれたときも
その残ってた変数が使われます」
『へー、だからこういうふうにポインタを返せるんだ』
「ま、使い道とか詳しいことはまた今度。で、そのポインタを受け取ってみ
ます」

void CDebugDlg::OnButton1() 
{
    COver *pcOver = GetCOver();
    // さて？
}

「さて問題。 pcOver を使って CInner::m_i にアクセスするにはどうすう
ればいい？」
『えーっと、まず pcOver のメンバ変数 m_cInner にアクセスするんだよ
ね。だから』

    pcOver.m_cInner

「違う違う、ポインタの時は . じゃなく -> を使うから」
『あ、そっか』

    pcOver->m_cInner

『で、次に m_cInner を通して m_i にアクセスするんだから』

    pcOver->m_cInner->m_i

「そうじゃないんだよねー」
『げ、やっぱ？　じゃあ』

    pcOver->m_cInner.m_i

「そう、そっち」
『そうなんだ……でもどうして？』
「順に考えればいいだけ」

    pcOver

「これはポインタだから、 m_cInner には -> を使えばいいでしょ」

    pcOver->m_cInner

『ここまではいいんだけど』
「そしたら、 pcOver-> を無視するのがコツ。つまり」

    m_cInner

「しか見ない！」
『それっていーの？』
「いいのっていうか、そうなんだから。 pcOver->m_cInner は〈 pcOver の
メンバ変数の m_cInner 〉って意味でしょ。でも〈 pcOver のメンバ変数
の〉って部分に関係なく、 m_cInner は m_cInner でしょ」
『？？？』
「うーん、たとえば、ある〈哲也君〉がいたとして、それを〈山田さんの家
の哲也君〉と呼ぼうが〈翔君の弟の哲也君〉と呼ぼうが、それが〈哲也君〉
には変わりないでしょ。それと同じ」
『分かったような分かんないような……そうだ、つまり、 m_cInner として
見れば、これはポインタじゃないから』

    pcOver->m_cInner.m_i

『ってなるってことなんだよね。じゃーさ』

    pcOver->m_cInner->m_i

『ってなるのはどういうとき？』
「そりゃもちろんポインタの時」

class COver2
{
public:
    CInner *m_pcInner;
};

『そっか、メンバ変数がポインタって場合もあるんだ』
「これなら」

    pcOver2->m_pcInner->m_i;

「って、ポインタとしてアクセスすればいいわけ」
『なるほど』

/*
    Preview Next Story!
*/
『どれが正体か、見分けるの難しいね』
「次回もそうだよ？」
『げげ、もしかしてプログラミングってそういうのばっか？』
「いかに頭がこんがらがらないかが鍵かも」
『そんな〜』
「というわけで次回」
＜ Version 6.03 別名に注意！ ＞
『につづく！』
「別名なんて嫌い！　そのまんまの名前賛成！！」
『じゃ、〈水希ちゃん〉ってちゃん付けしないで』
「ヤダ」


////////////////////////////////////////////////////////////////////
/*              ２００１年４月１６日（月）の更新予定              */
http://www.kab-studio.com/

・更新なし
　「更新なし」、懐かしい響きだ（爆）。
　なんだかんだ言って、やっぱし毎日忙しいんでこれが続きそうです、ごめ
んなさい。でもこつこつとプロジェクトは進行中……。


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

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


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

    (C)KAB-studio 1999 - 2001 ALL RIGHTS RESERVED.
        http://www.kab-studio.com/
        info@kab-studio.com
*/
////////////////////////////////////////////////////////////////////




