/*
    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/12/11(Mon) No.086
    zMF 3850i Mag2 + Pubzine j
    sF ܂܂( URL: http://www.mag2.com/  ID: 0000012198 )
    sF Pubzine( URL: http://www.pubzine.com/  ID: 590 )
*/

/*              QOOONPQPPij̍XV                */
http://www.kab-studio.com/

ECodian  iomstream ǉ
@ STL & iostream 傩 Codian  iostream ǉ܂I
@ #11  #14 At@Co͂͂܂B
[ Codian ]
http://www.kab-studio.com/Programing/Codian/
[ STL & iostream  ]
http://www.kab-studio.com/Programing/STLiostream/


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

2000/12/03 (Sun)
@SR}}KƂڂ邩ȂB^CǵuOl
̃zbgn[uvccȂ񂩃_ˁB

2000/12/04 (Mon)
@Tj̓[~̓Bł쉎̂bcG̃obNio[T
ւĂȓBԑgB䂾B

2000/12/05 (Tue)
@ĂłɎĂfWJVƂĔ\ꂽƂ[ȘbB
ӂAĂ͎̐s߂Ă̂ˁB

2000/12/06 (Wed)
@YƂGƃTCt@Cn[̃R~bNXłwBǂ}j
AbNˁ[BԂ.com ܂cĂ܂B vi ͎gÂ
ȂBgςȂ̂͊mijB

2000/12/07 (Thu)
@ŋ߃qbgɂ[BWOOɂ[BȂ MFCTips01 
ɂ[B mule ̂ȂB

2000/12/08 (Fri)
@ytCł̂тBhLXȂB玞ԂȂȂ
B_n߂܂B珑n߂ȂƂĂ͂̂ŁBĂ
XgXp[gƂŌ̂ǍƂȂ̂B

2000/12/09 (Sat)
@j[o[̐^ɔI@fUCƋ@\𗼗郁
j[o[AȂccH


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

2000/12/03 (Sun)
WTL vO~O
Xg{bNXgĂ݂
AtlCtrls.h ɃRg[𑀍삷邽߂̃NXĂ
CButton  CListViewCtrl CDragListBox CMonthCalendarCtrl CIPAddressCtrl 
Attach() Ȃ΂ȂȂۂ
pbp[NX
z[y[WǗAv邱ƂړI

2000/12/04 (Mon)
̃AvŕKvȂ̂ŐK\CuT
gimp  regex.c  regex.h
STDC_HEADERS REGEX_MALLOC __STDC__  #define ăRpC
ƌłĂ

2000/12/05 (Tue)
K\Cu
regcomp() ō\
regexec() ŕ`FbN
z[y[W}l[W낤ƂĂ
t[EFAƂČJȂ

2000/12/06 (Wed)
WTL vO~O
R_CAONX
CFileDialog  MFC ̂ƂƈႤ
CFolderDialog  SHBrowseForFolder() ̃bp[
CDialogImplBase pĂȂ̂_
ev[gI[o[ChƃoϐłI[o[ł

2000/12/07 (Thu)
Vt[EFAuق߂ԁv̍쐬ɒ
\
uEBhETCYύX悤ƂĂ͈vɂ@\
WM_GETMINMAXINFO ɑΉ΂
GetSystemMetrics() Ń^Cgo[ƃt[
GetWindowRect() Ńc[o[ƃXe[^Xo[
ȃG[o܂

2000/12/08 (Fri)
ق߂ԍ
o[̈ړ RBN_HEIGHTCHANGE ʒm
WTL  atlcrack.h  BEGIN_MSG_MAP_EX  NOTIFY_CODE_HANDLER_EX 
ubZ[W̌Ă΂鏇ԁv厖H

2000/12/09 (Sat)
ւ
IuWFNgw̃bZ[WMƂ́H
̃IuWFNg̃\bhĂяo
ԑJڂāH
Ԃڂς邱
̐}uԑJڐ}v
ŋ߂͂悭gȂ


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

EǉPF
#define FORTRAN GLUT IDE MIMD  JgfBNg[ 
RlNVX R~bg TuZbg  X[p[NX 
X[p[Zbg XybN J q[}C^[tFCX 
x`}[NeXg foCXReLXg [` 

ET̏󋵁F
@͂PXPǉB\낢ȁ[ƁBƁAǉ
ĂȂPĂ܂܂ȁ[BPtłB


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

ev[g
#06 ev[g̃I[o[[h

@֐ev[g̃ev[gɁAftHǧ^w肷邱
͂ł܂B

template< class type_Default = int >    // RpCG[B
type_Default NotUseDefaultPara()
{
    type_Default Ret = 0;
    return Ret;
}

@ǁAɁuev[g̃I[o[[hv邱Ƃ
܂B

template< class type_Para1 >
void OverLoaded( type_Para1 p_lh, type_Para1 p_rh )
{
    printf( "1 Para\n" );
}

template< class type_Para1, class type_Para2 >
void OverLoaded( type_Para1 p_lh, type_Para2 p_rh )
{
    printf( "2 Para\n" );
}

void Use_OverLoaded()
{
    OverLoaded( 100, 100 );    // 1 Para
    OverLoaded( 100, 2.2 );    // 2 Para
}

@ȂӂɁAuev[gvɂČĂ΂֐ev
[gς悤ɂ邱Ƃł܂BAł VC6 ƃG[
ɂȂႤˁB܂肢ႶȂB͂̏ЉBˁB


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
wj[o[Ă܂ƂƂĂ񂶂Ȃ́Hx
uȂŁHv
wgȂƂ͂̃ACRNbN΂񂾂x
uꂪˁAuEUɂĂ͂łȂ񂾂ˁv
wI@[AςȃuEUɑΉ̂đςx
u܁A̓vO~OSAȂɋÂKv͂Ȃǁv
włSR}}Ku炵Hx
uAȂ́H@[A͂Ɓccv
w󂿂Iɂ͂̓_Hx
uvO~Õy[WƁAȂ񂩋Snccv
w͕\ɂoĂ邵[A}KɂxoĂ炨Ɓx
uA邢Iv
@F\̏̎qΔłB
http://www.kab-studio.com/
_______________________________________________________________[KCM]


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

@Version 5.21
t@Cǂݍ݂ɂɃubVAbvI

uł͑Ȏv

    while( !cIFStrm.eof() )
    {
        cIFStrm
            >> i;
        if( cIFStrm.fail() )
        {
            MessageError( IDS_E_NONINT );
            return;
        }
        char chDest[256];
        sprintf( chDest, "%d", i );
        m_cDataLstBox.AddString( chDest );
    }

w chDest  while ̑OŐ錾ĂƂȂ񂾂ˁx
uB܂KƁA while ̂ɂ {  } ̉qlXgr
Č܂v
wŁAϐ̓lXg̒łgȂ񂾂ˁx
uȂłv
w[ƁAlXg̒łȂAOɏoƂȂȂႤ
񂾂ˁx
uƁB́qOɏorĂ̂NZmŁA while 
̃[vP񂲂ƂɃlXgOɏo`ɂȂ܂v
wAȂ́IHx
úA while ̂̓lXg̊OɂAčlĂA Ver 2.7 
( No.018 ) ł悤ɁAlXgȗƁq̍s[vr
Ȃ邩v
wȂ邩Hx
uȂ邩AlXgŜ[v̌JԂ̑ΏہAčlĂȁv
wȂقǁBƁAlXgPsAĂ݂Ȃ̂ȁx
uƂ날邩ˁBŁAȂ chDest  while ̑OŐ錾
񂾂ƎvHv
w[ƁA while Ń[v̊Oɖo񂾂A̓xɁcc
؂ꂿႤAĂƂ͕ϐȂȂႤIx
uƁB[v̓x chDest 폜čĂэāAČJ
ԂɂȂ邩ˁv
w̌JԂČ\ʁHx
uꍇɂ邯ǁAȖʂȂv
wx
uAςꍇɂ邩ˁB std::ifstream gƂɁq폜
ƂɌĂ΂֐rČłv
wAꂪxxĂ΂邱ƂɂȂႤ񂾁x
uƂ邩Ax͋CtĂȁB
ƕtƂƁv
wtƂƁHx
u int i; ̕ while ̒Oɒu܂傤v
w[ƁA cIFStrm 钼Oɂ񂾂ˁBA
while ̒ɓĂ炾ˁA i ǵx
uA璼Oɍ邱Ƃɂ܂Bt@CȂƂ͍炸ɍ
ނˁv
w\ׂˁx
u܁ÁqgOɍr₷Ă̂邩ȁB
ĎBx̓oO𒼂܂傤v
w΁AoOȂẮIHx
u񂾂ˁBf[^Ă Data.txt Jāv
wقB[ȂĂ񂾂ˁx

100
200
300

uŌɉsĂsĂ݂āv
wقBccA IDS_E_NONINT ̃G[oII@ȂłIHx
uāAȂłłł傤v
wɒׂƁHx
u{CŃvO}[ɂȂȂAƂׂȂƂˁv
wcc}jAɁqŌ͉sȂŁrď̂́x
u_v
wςx
u܁A͌Ă std::ifstream ̊֌WA̒iKł
ˁv
w std::ifstream ̖Ȃ񂾁x
uAg₷ĂƂō̗p std::ifstream ǁAdg݂
炱ɏoƂƂˁv
w fopen() ƂgĂƂɂȂ̂ȁx
uA std::ifstream {ŐFXĂ̂Ȃ
ǂˁBA̖̗Rɂāv
wx
u܂A std::ifstream::eof() Ăяo true ԂĂ
́Hv
wt@C̍ŌゾƂx
uBŁA cIFStrm >> i Őlǂݍ񂾂ƂAŌɉs
ĂƁA傤ǃt@C̍ŌɍsȂ킯v
wǂ䂱ƁHx
u cIFStrm ̒ɁA͂ǂǂݎ邩ĂČłv
w Ver 5.12 ( No.077 ) łˁx
uŌ 300 ǂݍ񂾂ƂÄʒu 300 ̒ɂȂ킯v
w܂ÂƂɉscĂ邩A std::ifstream::eof() Ńt@
C̍ŌɂȂȂ񂾁Ix
uAsȂ 300 ̂ƂɃXy[Xꂽ肵Ă
ȌʂɂȂ邩v
wXy[XĎsAzgx
uAsXy[XȂƂɂ̓[v͂RȂ񂾂ǁA
Ƃ͂SɂȂ邩v
wȂ 300 ǂݍ񂾂Ƃ傤 eof ASڂɓƂ
while ňďI񂾂ˁx
ufobOƂɂ́Au[N|CgݒuĂ
ׂĂƂȁv
wȂ񂩒nˁccꂪĂ@Ȃx
uȂȂBdvȂ̂͂Sڂ̃[vv
wSڂ cIFStrm >> i œǂݍގāẢsXy[XȂ
񂾂˂ˁAȂɓǂݍł񂾂낣x
uœǂݍ߂Ȃ std::ifstream::fail()  true ԂĂ
킯v
wAŃG[ԂɂȂႤ񂾁Ix
uł́A cIFStrm >> i œǂݍ񂾂ƂɁqt@C̏I[
rĂƂŁA std::ifstream::eof()  true ԂĂԂ
Ȃłv
w std::ifstream::fail()  std::ifstream::eof() ĂƁHx
uƁBv

    int i;
    char chDest[256];
    while( !cIFStrm.eof() )
    {
        cIFStrm
            >> i;
        if( cIFStrm.fail() )
        {
            if( !cIFStrm.eof() )
            {
                MessageError( IDS_E_NONINT );
                return;
            }
        }
        sprintf( chDest, "%d", i );
        m_cDataLstBox.AddString( chDest );
    }

uĂΉv
wrhĎsI@[܂Ix
úA eof ɂȂĂĂƂɋCtǂȂ񂾂ˁv
wCtRcẮHx
uoƎsv
wccBƁAȂ񂩌ɂȂHx
uˁAlXg[ȂĂ邵A cIFStrm.eof() QĂł
Ă̂͂Ɖˁv
wlXg[̂Ă܂́Hx
uvOǂ̂ςɂȂ邱ƂˁB̏ꍇɂ́v

        if( cIFStrm.fail() )
        {
            if( cIFStrm.eof() )
            {
                break;
            }
            MessageError( IDS_E_NONINT );
            return;
        }

uďƂł邩ȁv
w͂łȂ񂩁ccAʂ fail() ̕KvȂ񂶂ȂHx
uHv
wƂ΂[AAȂ while ̕vȂccx

    while( 1 )
    {
        cIFStrm
            >> i;
        if( cIFStrm.eof() )
        {
            break;
        }

        if( cIFStrm.fail() )
        {
            MessageError( IDS_E_NONINT );
            return;
        }
        sprintf( chDest, "%d", i );
        m_cDataLstBox.AddString( chDest );
    }

wĂƂx
uI@Ȃȕ@ccv
wȂ񂩋L̕ЋɁccA Ver 2.9 ( No.020 ) ŋx
uABmɂ@̂ЂƂBłcc[v
wẮHx
u̕ӂ͐FXlɂăX^CႤȁB while  !cIFStrm.eof() 
cĂ΁Ã[vqt@C̏I[܂ŁrĂƂŉĂ
邩ˁv
w[vƂǂŔ邩ɂˁx
uÂɂƋtɉɂȂ邵ÂČ
l傫ˁv
wccŁAǂƁHx
uՋ@ςōs܂傤v
wȂ񂶂ႻAꂪ闧̐lԂ̌tHx
uł厖ȂƂH@`[gŁq[v͎gȂ悤
ɂrČ߂炱vO͏Ȃ悤ɂv
w܂ɍ킹ĂƁHx
uȂā[AR[fBOX^C炢Rɕς悤ɂ
傤ĂƁBǂȃR[fBOX^CłvOA
ꂪvĂv
wȂ񂩂vÕXLƈႤccx

/*
    Preview Next Story!
*/
włmɁAfƂł̃t[~OĂˁx
ulƂẮÂ͕sтȁ[Ǝvˁv
wmɂȂłȂƂłĂƂŔMȂlˁx
uÂɂ͂܂Ȃˁv
wƂ킯Ŏx
 Version 5.22 NX 
uɂÂIv
włȂ̂ĂȂ񂩓ィx
uhv


/*            QOOONPQPWij̍XV\              */
http://www.kab-studio.com/

Ej[o[vn
@܂ŖڎƂċ@\Ăj[o[iɂt[j
蕥܂BuEU Java XNvg̐ݒŎgȂ悤
̂ŁB
@̂߂ԃX^Sy[W኱܂B\͂P{B
܂ł̊ԁAꂵ邩܂񂪌䗹̒B


/*                          Ӂ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!!                      */


