{magclick}
{magclick}
/*
    KAB-studio.h
        @j`a|ŐTXVe
        i[ꂽwb_[t@Cłi΁jB

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

    MF 2000/08/21(Mon) No.070
    zMF 3820i Mag2 + Pubzine j
    sF ܂܂( URL: http://www.mag2.com/  ID: 0000012198 )
    sF Pubzine( URL: http://www.pubzine.com/  ID: 590 )
*/
{magclick}

/*              QOOONWPSij̍XV                  */
http://www.kab-studio.com/Info/News/

EKAB-studio.h x݁B
@KAB-studio.h ̂WPSzMx݂܂B
@R͂܂܂̂~x݁Bł Pubzine oRŔzMĂ̂
x݂܂B䗹B


/*              QOOONWPUij̍XV                  */
http://www.kab-studio.com/Info/News/

ESTL & iostream 储x݁B
@ STL & iostream ̂WPUzMx݂܂B
@R͂܂܂̂~x݁Bŏ\肵Ă̂Ȃ̂ŁAzM̒x
ꓙ͂Ȃ̂łSB


/*              QOOONWQPij̍XV                  */
http://www.kab-studio.com/Info/News/

EKAB-studio.h kōXVB
@KAB-studio.h  #pragma twice VOɂȂ̂ŁAkłɂ܂
B_E[h̓t[EFACtH[V[ɂāB
[t[EFACtH[V[]
http://www.kab-studio.com/Freeware/


/*                        `[ʂȓL                        */
http://www.kab-studio.com/nikki2/

2000/08/06 (Sun)
@uvuACXvɁIIij@{̓ẃB
Aj̘bBĂ߃nVCXB߂̂Č\hLhLł
ˁ[B

2000/08/07 (Mon)
@[~ۑz[y[WCXg`BCXg͂Ƃ
ƕ`ȂƂˁBłtɁAvO~OĂȂccBĂB

2000/08/08 (Tue)
@uςSԁv̎n܂B܂̓hCuBŐHׂ菬т̉
ɍsBĂB

2000/08/09 (Wed)
@QځBƂƂsb`wI@g"܂BȂ̂ɂ[
BccBċً}ɂ΂̏ցB͂ȂłȂB
Ƃ肠SB

2000/08/10 (Thu)
@RځBca@ɍs΂̕tYɁBs}篖
邱ƂɁijBŝ͂ȂłȂ񂾂ǁANȂ
Ȃ̂ƁAӔC𕉂킳ĂĂ[XgX\B

2000/08/11 (Fri)
@SځBĂьca@ցB̓͑߂ɏIŋtɂAB
Ƃ͂ƊyȂ͂ccB

2000/08/12 (Sat)
@rfI̐Ă[ӏ܉Ă[ijBĂƂƂ
MĊJI@̋vԂ肾ȁ[BƃAj̃]Ch͂Ȃ肢łB
āAĂ͂܂R~PsƂȂccB

2000/08/13 (Sun)
@̂тȓjBAjBĐ푈ɂāB

2000/08/14 (Mon)
@āAƂ̃CXgāB͌Ĵǂ邩FX
ĂBł߂ǂijB

2000/08/15 (Tue)
@dbĂсijBQ[Ö{ƁBhNGǂ悤B

2000/08/16 (Wed)
@͌n͉BCXg`BEX^[tH[XƃX^[
\W[B

2000/08/17 (Thu)
@ȂƂƂBȂ񂾂񂾌āẢċx݂Č
\x̂BlEbbEăUibNI

2000/08/18 (Fri)
@wց`BQ[ZsQ[FBłقƂǉ
ijB\j[AɌCXgЂƂBăUibNB
RpCĂƂ́ccB

2000/08/19 (Sat)
@ɈQ[𔃂ƋߏBA킸ijB
炸BăTCo[_CАĩCibvɂāB


/*                         L̗JT                             */
http://www.kab-studio.com/Programing/KabuU/

2000/08/06 (Sun)
x

2000/08/07 (Mon)
x

2000/08/08 (Tue)
x

2000/08/09 (Wed)
x

2000/08/10 (Thu)
vO~O
BSTR  VARIANT Ƃ VB ̂
COM ֌WŎg
gĂƖ𗧂

2000/08/11 (Fri)
vO~O
܂܂PǉȂ
EBhEYׂ̍A C++ ̕Ȃ
S҂ǂł₷
łPꐔĂ邩

2000/08/12 (Sat)
x

2000/08/13 (Sun)
ւ
Visual Studio IDE ̂悤ȒEj[̍́H
GNXv[[̂́uo[vgĂ
MFC  CReBar
ׂ͍Ƃ͖
VS ͓Ǝɍ̂gĂ
Codeguru ɂ邩Qlɂ

2000/08/14 (Mon)
x

2000/08/15 (Tue)
vO~O
悭mȂ̒Pǉׂ
MSDN 炢̂ƂȂ
ǉȂ悤ɂȂ
ꂩ́u΂vƂƍl

2000/08/16 (Wed)
x

2000/08/17 (Thu)
vO~O
uAg~bNvƂ
łPꂱǉӖ
XVpɂԈႦĂĂ₷
CMemFile Ƃ
̒m𖞕ՂȂ߂̂

2000/08/18 (Fri)
ւ
^Cgo[Ɖ
WS_POPUP Ń^Cgo[Ȃǂ͏ɉc
EBhEgw肷EBhEX^CĂȂ
r[EBhẺcĂ̂
r[EBhE̕KvȂȂ

2000/08/19 (Sat)
ւ
r[EBhẼX^CςȂ
DirectX œhׂ璼
EBhEɌɒuĂ@́H
͓
SetWindowPos()  HWND_BOTTOM nČĂяô
^C}[ł܂߂ɂ邩
tbNŎOɗƂɌĂяo
fXNgbv̎qEBhEƂč邩
r[̃EBhEX^C͕ςƎv
Spy++ ŊmFĂ݂Ă
EBhẼTCYςƃX^Cς


/*             vO~OET̒ǉP                 */
http://www.kab-studio.com/Programing/Dictionary/

ET̒ǉPF
BSTR CALLBACK explicit goto PASCAL union UTC VARIANT ACR
GfBA  OV{ NbN NbsO qEBhE
T[rXpbN ĕ` XgOe[u ^u ȂƂ Alloc 
v^[ e e 


ET̒ǉPF
Zq̗D揇 oCfBO MSDB :: V^bNXG[ 
VOi vZXhc eL[{[h zL[R[h̕ϊ
gcc bNJEg Ag~bN MSB MSB LSB LSB oCi[ 
oCi[t@C eLXgt@C lSVG[V
DirectX V[gJbg V[gJbgL[ ANZ[^[
Azz  


ET̂߂Ȃ
dib winapi CORBA TN ATL GlobalAlloc SetWindowsHookEx USR Mutex
readfile t@C CDatabase Rei Ce[^[ CString extern
cpp ENbN ATCh NbsÖ vZX tbN DLL
^ϊ FAR@PASCAL VACY


ET̂߂Ȃ
DLL }bvgt@C C++ ODBC nh static X[f
hdc ATL I[i[h[ cfopen format o[XvLV[ 
eL[@z@@ R[obN CMemFile SLT VOi
CxgIuWFNg oCiEt@C list CX^X
cgi t@Cnh DirectShow IShellLink enum


ET̏󋵁F
@AccB


{magclick}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
wA vector Ĕz̑ɂȂ񂾁AȂ񂩕֗x
u̎g悤ɂȂƁAvOȂyȁv
w[[Ă`x
@Ă`ȂȂ͍wǓo^B
http://www.kab-studio.com/Programing/STLiostream/
_______________________________________________________________[KCM]
{magclick}


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

@Version 5.05
zƕ

uO͕ƕɂČĂ܂v
w[ɕ͐ŁA char ϐ̒ɂP̂ˁx
uŁA͂ char ̔zv
wx
uāA܂ŏ TRACE() ŕŜ\@v
wA΂܂ˁB %c ǁx
u̎ %s ɂ܂BΕϐq񂾁rČȂ
邩v

void StringArray()
{
    char chAry[] = "ABC";
    TRACE( "%s\n", chAry );
    // ABC
}

wȒPx
uĖłIIv
wIIx
uA %s Ȃ %c ŕŜ\ƂAǂ
΂ƎvHv
wH@đOx

void CharsArray()
{
    char chAry[] = "ABC";
    TRACE( "%c, %c, %c\n", chAry[0], chAry[1], chAry[2] );
    // A, B, C
}

ułꂶA chAry RĂƂ܂Ȃłv
wAB܂A chAry ̒ɉĂ邩΂
ˁB sizeof Łx
u sizeof ͕sv
wAȂłIHx
uOɌłA sizeof A|C^z̗vf𒲂ׂ邱
Ƃ͂łȂāBz񂶂ȂA|C^nꂽꍇĎŁv
wȂ񂩂邢[x
uɂȂ΂Ȃł邩BႠɃqgv

41 42 43 00 8C F5 64 00 E2 19 40 00 2C F8 64 00 C0 01 52 00  ABC....

w̑ÓA̓Ă郁̂Ȃx
ȗɂA A  AB A ABCD ŌĂ݂Ɓccv

41 00 CC CC 8C F5 64 00 E2 19 40 00 2C F8 64 00 C0 01 52 00  A......  
41 42 00 CC 8C F5 64 00 E2 19 40 00 2C F8 64 00 C0 01 52 00  AB.....
41 42 43 00 8C F5 64 00 E2 19 40 00 2C F8 64 00 C0 01 52 00  ABC....
41 42 43 44 00 CC CC CC 8C F5 64 00 E2 19 40 00 2C F8 64 00  ABCD...

û̐ccv
wAS 00 ɂȂĂIIx
ûƁ[II@Å֐Ă݂āv

void StringSize()
{
    char chAry[] = "ABC";
    TRACE( "%X, %X, %X, %X\n", chAry[0], chAry[1], chAry[2], chAry[3] );
    // 41, 42, 43, 0

    TRACE( "%d\n", sizeof( chAry ) );
    // 4
}

wŏ TRACE() ́Ã̂Ɠ̂ˁBQԖڂ́A
A sizeof gႢȂČĂ̂ɎgĂIIx
u[AI@ŁAǂȂĂHv
wSBāAȂŁIH@ȂOȂƌĂˁx
uŌłA 00 v
wAŏ TRACE() łSԖڂ̗vfɂOĂˁx
u܂Iv
w܂Hx
u "ABC" Ċɕ_uR[e[Vň͂ނƁA̍Ō
lO̕IɒǉĂƁv
wIɒǉHx
uB̊֐Ă݂āv

void NullChar()
{
    char chAry[] = "";
    TRACE( "%X\n", chAry[0] );
    // 0
    TRACE( "%d\n", sizeof( chAry ) );
    // 1
}

wA "" Ȃ̂ɃTCYPƂI@JȂ񂾁BŁA
ȂɂOccx
uARłvf͂SɂȂ킯B́AlO̕
qI[rƂq NULL rƂ܂v
w͂āAǂŕ悤ȁccx
uȂ݂ɂ̏I[ \0 ď܂v
wAȂ񂾂 \n ݂x
uA \0  \n ƂBlł邵v
w '\0' ͂OĂƂˁB '\n' ́Hx
u 0x0A POiƂPOˁBׂ΂v
w TRACE()  %X Ƃ %d ł΂񂾂ˁx
uBŁA \0 ĉ̂߂ɂ邩Hv
w[ccāA sizeof gȂŕ̒
ĂƁHx
uƁB̂߂ɎIɒǉłv
włǂāHx
uz̗vf擪ЂƂׂĂΕłv
w[A[A肻ȋC邯ǁccx
uˁAlȂĂB܂͐`v

void GetLengthWithIndex()
{
    char chAry[] = "ABC";

    // B

    TRACE( "%d\n", /* vf̓ϐ */ );
    // 3
}

wAŁAz̊evf𒲂ׂ񂾂ˁx
uƂ肠PԖڂ̗vfɌŒ肵čl悤v
wPԖڂ̗vf '\0' ǂׂ񂾂A[Ɓcc if Ix
uAlǂׂ̂ if Bڂ Ver 2.8 ( No.019 )
Ăv
wĂƂ́ccx

    if( chAry[0] == '\0' )
    {
        TRACE( "OI\n" );
    }

uAȊv
wccł悪ccx
uevf𒲂ׂ񂾂A chAry[0] Ȃ chAry[1]  chAry[2] 
ׂ΂łv
wccx

    else if( chAry[1] == '\0' )
    {
        TRACE( "PI\n" );
    }
    else if( chAry[2] == '\0' )
    {
        TRACE( "QI\n" );
    }
    // ƑccB

wȂ킯ȂI@͂͂IIx
uAقǉȂv
whAȂ́Hx
u܂肳A chAry ̗vfw肪OPĂāA邽т 
if Ń`FbNłH@Oɂ̂łv
wׂII@cc for Hx
uB Ver 2.9 ( No.020 ) łłv
wA if ̎̉񂾁cc[ƁA for ĂȊˁx

    for( int iBox = 1; iBox < 6; ++iBox )
    {
        TRACE( "%d ", iBox );
    }

wő₵̂́A chAry ̗vf̔ԍˁB̔ԍ̕ϐ
O iNo ɂƁx

    for( int iNo = 0;

ẃccH@͂ǂ΂̂ȁx
u for ͔z擪璲ׂĂāAOĂ~߂悤
łv
wABAłĂ if Ɠx
uB炱 if ɔC邱ƂɂāA͋󔒂ɂ܂傤v
wA󔒂IH@ȂƂł́Hx
ułBA`FbNȂA for 甲悤ɂ
ȂƁv
w for ̒ςȂccĖ[văcˁx
uBtɌƁA̔̂͂ǂł΂ƎvHv
wA if ̂Ƃł΂񂾁Ix
uƁB̕ӂC[Wł悤ɂˁv
wف[BŁAŌ͂P₷񂾂畁ʂ ++ g΂Ax

    for( int iNo = 0; ; ++iNo )
    {
    }

wĊȁx
u̒ɖ if āA`΁v
w񂶂ڂx

    for( int iNo = 0; ; ++iNo )
    {
    if( chAry[0] == '\0' )
    {
        TRACE( "OI\n" );
    }
    }

uJbRCfgˁB₷Ȃ邩v
wCfgčŏ̃^ûƂˁBƁA chAry ̗vf̔ԍ 
0  iNo ɕςāAƂ TRACE() ccA for 甲̂
΂񂾂ˁx
ug΂Hv
wƒׂccA Ver 2.9 ɏoĂB break g񂾁Bx
u֐ŜŌƁv

void GetLengthWithIndex()
{
    char chAry[] = "ABC";
    for( int iNo = 0; ; ++iNo )
    {
        if( chAry[iNo] == '\0' )
        {
            break;
        }
    }
    TRACE( "%d\n", iNo );
    // 3
}

wrhĎsAAƂRɂȂI@ςĂvIx
uӂɂ΁A̒킯v

/*
    Preview Next Story!
*/
w[AȂ񂩍͂ƂvOg񂾂ĊIx
uȂႩȂ킩Ȃۂǁv
wETCˁ[A󂿂񂪎Ql肾炢[́x
uAQlccv
wƂ킯Ŏx
 Version 5.06 ƃ|C^ 
uɂÂIv
w̃{bgƒ닳tƂȊ낤[x
uΔɌƂȂ񂩃JcNccv


/*                       ؂̗JT                           */
http://www.kab-studio.com/Programing/KanaU/

const o֐
#02 const NX^

@O񌾂悤ɁA const gƂŁuĺ͈v
߂邱ƂłāAlXȖʂŃvOǂȂ܂B
@łA const ȒPɎĝ͑g^iv~eBu^jBNX
 const ɎgpƂƁAƂɓȂ܂B

class CNotConst
{
public:
    void NotConst()
    {}
};

@̂ʂ̃NXB const ƂĎgĂ݂܂傤B

    const CNotConst cNotConst;
    cNotConst.NotConst();    // G[B const o֐łB

@ƁAo֐ CNotConst::Do() ĂԂƂł܂B́A 
const NX^ϐʂČĂяo郁o֐́u const o֐v
ȂłBA const o֐oĂłB

class CConst
{
public:
    void Const() const
    {}
};

@CConst::Const() ̂Ƃ const ĕtĂłBꂪ
u CConst::Const()  const o֐łvĂwĂ镔
B΁A const CConst ^ϐłĂяoƂł܂B

    const CConst cConst;
    cConst.Const();

@ƓRǁA const QƂ const |C^łˁB
ƁA const NX^ϐ const o֐͖ȂĂяo
Ƃł܂B̂Q_ɒӂĂˁB
@āA܂ŒƁuA܂胁o֐ const ɂ΂
񂾁vȂĎvȂǁAȌyCƁAu const 
o֐ȂĎgȂIvĎvƂɂȂƎvB
const NX^ƃoϐ̊֌WBˁB


/*            QOOONWQWij̍XV\                */
http://www.kab-studio.com/Info/News/

EjQOqbgI
@Ԃ񂱂̓܂łɂ͂QOqbgɒBĂƎv܂B 
KAB-studio ͂TN˔j܂I@Ƃ킯ŕ\ف[̂
ƃj[Aȁ[ƎvĂ܂Buj[AȂǂ
vƂꂻȋCijB


/*                          ӁII                            */

Ẽ[ԐMȂłB
EӌE]Ez[`[ʂȓL]肨肭B
http://www.kab-studio.com/nikki2/
EvO~OɊւ鎿[L̗JT]ɂ肭B
http://www.kab-studio.com/Programing/KabuU/
EwǓo^Ƃɂ͂̃y[WōsȂĂB
http://www.mag2.com/m/0000012198.htm
http://www.pubzine.com/detail.asp?id=000590
E͎ōsȂĂB
EobNio[͂̃y[Wɂ܂B
http://bigbeat.tegami.com/~mgsearch/frame.cgi?id=0000012198
http://www.kab-studio.com/Freeware/

/*
    KAB-studio.h
    Weekly Mail Magazine.
    Written by Kaburaya Seiden.

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


/*                      See you next week!!                      */


