                                                   ա 2004 ǯ 5  27 
 Sun[tm] Studio 9 C++ ѥ Readme 

     ܼ

       A. Ϥ 
       B. Sun Studio 9C++ ѥ 5.6 ˤĤ 
       C. ѹ줿ǽ 
       D. եȥν 
       E. Ȳ 
       F. »ȸߴ 
       G. Ҥθ 
       H. 饤֥κۤˤĤ 
       I. ̤бθ 



     ------------------------------------------------------------------

     A. Ϥ

     ʸˤϡSun[tm] Studio 9C++ 5.6 ѥ˴ؤ󤬵
     ܤƤޤʸǤϡΥѥС 5.6  
     C++ ѥɽޤΥ꡼Ƴ줿ǽե
     νࡢΤ»ࡢߴˤĤ
     ޤޤܽεƤϥեȥޥ˥奢ξ򹹿
     佼ޤ

     ʥޥ˥奢 

        * ꡼Ρ (Solaris ץåȥե): 
          http://docs.sun.com ǽǤ꡼ΡȤξϡ
          ʤ Readme եξͥ褷ޤ 
        * Sun Studio 9 Υɥ: ʤΥޥ˥奢ڡREADME 
           HTML С󡢤ӥޥ˥奢ϡ
          installation_directory/SUNWspro/docs/ja/index.html 饢
          ǤޤǥեȤΥ󥹥ȡǥ쥯ȥ /opt Ǥ
          index.html Υڡ鼡Υޥ˥奢˥Ǥޤ 
             o C++ FAQ 
             o C++ 桼 
             o C++ ܹ Readme 
             o C++ ܹԥ 
             o ɸ C++ 饤֥ꡦ饹ե / Standard C++ 
               Library Class Reference (Ѹ) 
             o ɸ C++ 饤֥ꡦ桼 
             o Tools.h++ 7.1.0 Readme 
             o Tools.h++ 桼 
             o Tools.h++ 饹饤֥ꡦե󥹥ޥ˥奢 
             o ֱ黻 Readme 
             o C++ ֱ黻ץߥ󥰥ե / C++ Interval 
               Arithmetic Programming Reference (Ѹ) 
             o إ饤֥ Readme 
             o ¹Ի饤֥ Readme 
             o ͷ׻ 
             o 󥯥󥿥󥫡 Readme 
             o CC(1) Υޥ˥奢ڡ 
             o 3C++ ޥ˥奢ڡ (ɸ C++ 饤֥) 
             o 3CC4 ޥ˥奢ڡ (ߴ⡼ɥ饤֥) 
        * 糫ȯĶ (IDE) Υɥ: IDE ˤ֥إסץ
          ˥塼 Sun Studio 9 IDE γƥݡͥȤΥ饤
          פ˥Ǥޤ 
        * ȯԸ꥽Υݡ: ѻץ륳ɡ
          ȡʥå١ˤĤƤϡȯԸݡ 
          http://developers.sun.com/prodtech/cc 򻲾ȤƤ 

     ʸΥƥǤɽˤϡޥɥץץȤǼΥޥ
     ɤϤޤ

                CC -xhelp=readme

     ʸ HTML ǤɽˤϡǥեȤΥ󥹥ȡǥ쥯
     ȥˤ뼡Υե򳫤ޤ

     file:/opt/SUNWspro/docs/index.html

      - Sun Studio 9 եȥ /opt ʳΥǥ쥯ȥ˥
     ȡ뤵ƤϡѤΥƥˤºݤΥѥ򡢥
     ƥԤ˳ǧƤ
     


     ------------------------------------------------------------------

     B. Sun Studio 9C++ ѥ 5.6 ˤĤ

     Υ꡼ C++ ѥϡSPARC (R); ץåȥե 
     Solaris[tm] ڥ졼ƥ󥰴ĶΥС 8910  x86 
     ץåȥե Solaris ڥ졼ƥ󥰴ĶΥС 89
     10 ѤǤޤ

      С 5.6  C++ ѥϡС 5.0  5.5 
      C++ ѥΥɤӥХʥꥳɤȾߴǤ
     ʤC++ 5.6 ѥѤơС 5.05.15.2
     5.35.45.5  C++ ѥѤ˺줿ɤ򥳥
     ǤޤޤС 5.0 - 5.5  C++ ѥˤä
     줿֥ȥɤ C++ 5.6 ѥ줿
     ȥɤȥ󥯤Ǥޤ󥯤ϡ˺ǿΥ
     顢Ĥޤ꺣Υ꡼ǤС 5.6 ѤƤ

     C++ 5.6 ѥˤϡC++ 4.2 ѥѤ˺줿
     ɤ򥳥ѥ뤹뤿 -compat ץѰդƤޤ
     -compat ץϡС 5.0 Ƴ줿ץǤ
     


     ------------------------------------------------------------------

     C. ѹ줿ǽ

     ǤϡΥ꡼ C++ ѥ˿ɲä줿ǽ
     줿ǽޤ¾ Sun Studio 9 ݡͥȤˤ
     ƤϡSun Studio 9 οǽ٤򻲾ȤƤΥޥ˥奢
     ˥ˤϡhttp://docs.sun.com ˰ưޤ

        * -xarch-xcode-xmemalign -xprefetch ץΥ
          եȤѹ-O ץŸѹˤѥեޥ
          θ

        * x86 ƥ -xarch-xtarget -xchip Υ
          饰ɲ

        * -xprefetch_auto_type  -sync_stdio ץɲä
          Ȥˤ¹Իѥեޥ󥹤θ

        * -xchip  -xtarget Υե饰ɲäˤ SPARC Υݡ
          ĥ

        * -xautopar-xvector -xdepend ˤ롼פκŬ 

        * -xpch ǤΥץꥳѥѤߥإåեμưˤ
          ѥѥեޥ󥹤θ

        * ǥեȤǤ extern 饤ؿΥݡȤȡ-xrestrict 
          ץˤդݥ󥿤ǧ

        * #pragma opt ᤪ -xmaxopt ץˤŬ٥
          

        * -xustr ץˤ UTF-16 磻ʸΥݡȶ

     -xarch ΥǥեȤ v8plus ѹ 

     C++ ѥ餬ɤȤΥǥեȤΥƥ㤬
     v8plus (UltraSPARC) ˤʤޤΥ꡼ǡv7 Υݡ
     ѻߤͽǤ

     ǥեȤǤϡ߻ѤƤۤܤޥǼ¹Ի
     Υѥեޥ󥹤夷ޤUltraSPARC Υԥ塼
     ؤտޤץꥱϡԥ塼Ǥ
     ǥեȤưʤʤޤץꥱ󤬤
     ԥ塼ư褦ˤˤϡ-xarch=v8 ǥѥ뤷Ƥ
     

     v8 ƥϡƥѥ饳ޥɹԤǤʤ
     Υ󥯻ޥɤǤ -xarch=v8 ץŪ˻ꤹɬ
     ޤ󶡤Υƥ饤֥ϡv8 ƥư
     ޤ 

     v7 ƥϡƥѥ饳ޥɹԤǤʤ
     Υ󥯻ޥɤǤ -xarch=v7 ץŪ˻ꤹɬ
     ޤ󶡤Υƥ饤֥ϡv8 ̿᥻åȤѤޤ
     Sun Studio 9 ꡼ξ硢v7 ˤĤƥݡȤƤ륪ڥ졼
     ƥ󥰥ƥϡSolaris 8 ꡼Ǥv8 ̿᤬Ф
     硢Solaris 8 ڥ졼ƥ󥰥ƥϥեȥǤ̿
     ᤷޤΤץϼ¹Ԥޤѥեޥ󥹤
     㲼ޤ

     x86 ץåȥեξ硢-xarch ϥǥեȤ generic ˤʤ
     x86 ץåȥեǤϡ-fast  -xarch=native Ÿ
     ȤդƤ 

     -xarch ξܺ٤ϡC++ ޥ˥奢ڡ CC(1)  C++ 桼
     ɡ٤򻲾ȤƤ

     x86 ץåȥե -xarch-xtarget-xchip Υե饰ɲ

     C++ ѥ餬-xarch-xtarget -xchip Ѥοե饰
     򥵥ݡȤ褦ˤʤޤοե饰ϡx86 ץ
     ȥեǤ Solaris եȥˤ sse  sse2 ̿
     ݡȤȤȤ߹碌 Pentium 3  Pentium 4 åפѤ
     뤳ȤտޤƤޤץϼΤȤǤ

        * -xchip=pentium3  Pentium 3 ΥץåѤ˺Ŭޤ
        * -xchip=pentium4  Pentium 4 ΥץåѤ˺Ŭޤ
        * -xtarget=pentium3 ϡ-xarch=sse-xchip=pentium3
          -xcache=16/32/4:256/32/4 ꤷޤ 
        * -xtarget=pentium4 ϡ-xarch=sse2-xchip=pentium4
          -xcache=8/64/4:256/128/8 ꤷޤ 
        * -xarch=sse ϡpentium_pro ̿᥻åȤ SSE ̿᥻åȤɲ
          ޤ 
        * -xarch=sse2 ϡSSE Ĥ̿᥻åȤ SSE2 ̿᥻åȤ
          ɲäޤ 

          x86 ˴ؤõ

          Solaris x86 SSE/SSE2 Pentium 4 ߴץåȥեư
          褦 -xarch={sse | sse2} դƥѥ뤷ץϡ
          SSE/SSE2 бΥץåȥեǤΤ߼¹Ԥɬפޤ
          SSE/SSE2 бƤʤץåȥեǤץ
          ¹Ԥȡ㳰ȯꡢŪʷٹ
          ʤʷ̤ȯꤹ뤳ȤޤSSE/SSE
          2 ǥѥ뤵줿Хʥ꤬ SSE/SSE2 бƤʤ
          åȥեǼ¹Ԥ뤳ȤΤʤ褦ˤ뤿 OS 
          ӥѥФѥå󶡤ǽޤ

          Pentium 4 ߴץåȥեξ硢Solaris 9 update 6 ʹ
           OS ꡼ SSE/SSE2 бƤޤΥС
           Solaris OS  SSE/SSE2 бƤޤ

          ΤȤϡ.il 饤󥢥֥ؿѤƤ
          䡢SSE/SSE2 ̿ѤƤ __asm() ֥
          ɤˤƤϤޤޤ

          ѥȥ󥯤̡˹ԤϡɬѥȤä
          󥯤-xarch={sse | sse2} Ŭڤʵư롼󤬥󥯤
          褦ˤƤ

     ºݤΥѥŬڤ -xchip-xtarget -xarch 
     Ȥ߹碌ϡΥɥ饤˴ŤƷꤹ뤳ȤǤ
     ޤ

        * Solaris 9 update 6  Solaris ¹Ԥ 
          Pentium 3 ޤ Pentium 4 ǹۤԤ-fast-xarch=native
          ޤ -xtarget=native ꤹ뤫ɤ

          ξ硢ѥϼΤ褦Ÿޤ

             o Solaris 9 update 5 ޤϤ Solaris ڥ졼
               ƥ󥰥ƥϡSSE  SSE2 ̿򥵥ݡȤʤ
               ᡢ-xarch  pentium_pro ꤵޤ (pentium3 
               뤤 pentium4 ǤϤޤ)

               : ΥС Solaris եȥѤ
               뤫ɤ˴طʤ-xarch=sse 뤤 -xarch=sse2
               ꤹ뤳ȤǤޤSolaris 9 update 6 ʹߤ OS
               ꡼ SSE  SSE2 ̿򥵥ݡȤƤ뤿ᡢ
               ۤ줿¹ԲǽեϡС
               Solaris եȥưƤޥǼ¹Ԥɬפ
               ޤ

             o -xchip ϡŬ pentium3 ޤ pentium4 ꤵޤ
             o -xcache ϡPentium 3 ץåξ 16/32/4:256/32/4
               Pentium 4 ץåξ 8/64/4:256/128/8 ꤵ
               

          Solaris 9 update 6 ʹߤ Solaris ¹Ԥ Pentium 3 ޤ
          Pentium 4 ǹۤԤ-fast-xarch=nativeޤ 
          -xtarget=native ꤹ뤫ɤ

          ξ硢ѥϼΤ褦Ÿޤ

             o -xarch ϡPentium 3 ξ sse Pentium 4 ξ sse2 
               ꤵޤ 
             o -xchip ϡŬ pentium3 ޤ pentium4 ꤵޤ
             o -xcache ϡPentium 3 ץåξ 16/32/4:256/32/4
               Pentium 4 ץåξ 8/64/4:256/128/8 ꤵ
                

     -xarch-xtarget -xchip ξܺ٤ϡC++ ޥ˥奢ڡ 
     CC(1)  C++ 桼ɡ٤򻲾ȤƤ

     -O Ÿѹ 

     (SPARC  x86) -O ޥϡ-xO2 ǤϤʤ-xO3 Ÿ
     ˤʤޤ

     ΥǥեȤѹˤäơ¹ԻΥѥեޥ󥹤夷ޤ
     ѿưŪ volatile ȸʤȤˤ
     ξ硢-xO3 Ŭڤˤʤ뤳ȤޤΤȤ
     ȤɽŪʥץȤƤϡѤƱǥХ
     ɥ饤ФŤޥåɥץꥱ󤬤ޤϡ
     -O ǤϤʤ-xO2 Ȥäƥѥ뤹뤳ȤǤ

     -O ξܺ٤ϡC++ ޥ˥奢ڡ CC(1)  C++ 桼
     ɡ٤򻲾ȤƤ

     -xprefetch ΥǥեȤѹ 

     (SPARC Τ) -xprefetch ΥǥեȤ -xprefetch=auto,explicit 
     ʤޤŪΥ꡼ѥĥץ
     ˤϡѹɤʤƶ⤿餷ޤѹ̵
     ˤˤϡ-xprefetch=no%auto,no%explicit ꤷޤ

     -xprefetch ξܺ٤ϡC++ ޥ˥奢ڡ CC(1)  C++ 桼
     ɡ٤򻲾ȤƤ

     -xmemalign ΥǥեȤѹ 

     (SPARC Τ) v8 ƥξ硢-xmemalign  -xmemalign=8i 
     ˤʤޤv9 ƥξϡǥեȤ -xmemalign=8s 
     Ǥ

     -xmemalign ξܺ٤ϡC++ ޥ˥奢ڡ CC(1)  C++ 桼
     ɡ٤򻲾ȤƤ

     -xcode ΥǥեȤѹ 

     (SPARC Τ) v9 ξ硢ǥեȤ -xcode=abs44 Ǥv8 ξ
     ϡ-xcode=abs32 ΤޤޤǤx86 ץåȥեǤϡ-xcode ϥ
     ݡȤޤ 

      -- V9 ξ硢ͭ饤֥ΥɤǡǥեȤ 
     -xcode=abs44 ϻѤǤޤ󡣤Τ褦ʶͭ饤֥ιۤϡ
     ֥顼ǼԤޤѥǤϡ-xcode=abs64 Ѥ
     -xcode=pic13  -xcode=pic32 ʤɤΰΩɤ륪
     ץѤɬפޤ

     -xcode ξܺ٤ϡC++ ޥ˥奢ڡ CC(1)  C++ 桼
     ɡ٤򻲾ȤƤ

     -xchip  -xtarget Υե饰ɲ 

     (SPARC Τ) -xchip  -xtarget ץ󤬡ͤȤ 
     ultra3i  ultra4 򥵥ݡȤ褦ˤʤޤΤᡢ
     UltraSPARC IIIi  UltraSPARC IV Ѥ˺Ŭ줿ץꥱ
     ۤǤޤ 

     extern 饤ؿ 

     C++ ʤǤϡstatic ʤ¤ꡢ饤ؿ󥤥饤
     ؿΤ褦˳󥱡ĤȤˤʤäƤޤC++ Ǥϡ5.6 
     ˤʤäƽơǥեȤǥ饤ؿ˳󥱡
     褦ˤʤޤ饤ؿ饤󳰤ɬפ
      (ȤСΥɥ쥹ɬפʾʤ)ԡ 1 Ĥ
     ץ˥󥯤ޤϡԡɬפȤ륪֥
     ȥե뤬줾󥱡ѤΥԡä
     ޤ

      extern 饤ؿμˡϡץưϽƱ
     ͤ˵ʤŬ礷ƤꡢΥѥСˤäƺ
     ХʥեȸߴޤŤХʥϥ饤ؿ
     Υ륳ԡʣäƤ뤳ȤޤɤǤϡ
     extern 饤ؿΥԡϡ 1 Ĥˤʤޤ

      extern 饤ؿμˡϡΥ꡼˴ޤޤƤ
     C 5.6 ѥѤ C99 ǤΥ饤ؿȸߴ
     ʤextern 饤ؿ˴ؤ C  C++ §˽
     ȤˤäơƱ饤ؿ C  C++ եξ
     ǤξǤ⡢ǽץǤγؿΥԡ 1 
     Ĥˤʤޤ

     ξѥδ֤ˤϡ󥤥饤ؿ饤ؿ
     ݡȤ롢ʤ饤ؿ˳󶡤뤳Ȥ C 
     줬ǧƤȤǸߴ꤬ 1 ĤޤC++ 
     ϡΤ褦ʳǰϤޤ󡣤Τᡢ 2 ĤΥ饤
     ˡߤƤȡ󥫡顼ˤʤޤǹͤƤߤ
      

     // ե a.h
     #ifdef __cplusplus
     extern "C" {
     #endif
     inline int f() { return 1; }
     #ifdef __cplusplus
     }
     #endif
     
     // ե b.c
     #include "a.h"
     int g() { return f(); }

     ե b.c Υ饤ؿ f ϡ饤ؿΥݡȤ
     ƤʤؿˤäƥݡȤޤ

     // ե c.c
     int f() { return 1; }

     ʲ˼褦ˡ C++ Ǥ f  c.c 򺮺ߤȡʣ
     Ƥ뤳Ȥ򼨤顼󥫡֤ޤ 

     // ե d.cc
     #include "a.h"
     int h() { return f(); }

     βϡؿ f 饤ؿ򥵥ݡȤƤ뤳Ȥ C 
     ѥΤ餻뤳ȤǤc.c μμѤޤ 

     // ե c.c
     #include "a.h"
     extern inline int f();

     -xautopar-xvector-xdepend ˤ롼פκŬ 

     C++ ѥ餬׻󲽤ǽʥ롼פŬ뤿μ
     ץ򥵥ݡȤ褦ˤʤޤΥץϡ
     -xO3 ʾκŬ٥ǻѤɬפޤ 

        * -xautopar 
        * -xvector 
        * -xdepend 

     ܺ٤ϡC++ ޥ˥奢ڡ CC(1)  -xautopar-xvector
      -xdepend ɤߤ

     ݥ󥿤˴ؤ -xrestrict  

     C++ ϡC99 Ƴ줿 restrict ɤ򥵥ݡȤƤޤ
      C++ ѥǤϡC ѥΥץ 
     -xrestrict դ褦ˤʤäƤޤ

     Υץϡѥ˴ؿ˴ؤơݥ󥿷δؿѥ
     ᡼Ʊ֥ȡޤϥСåפ륪֥Ȥ
     ȤƤʤȤߤʤޤΤȤϥإåե
     륤饤ؿˤƤϤޤʤȤꡢC  C++ Ǥ
     Ȥʤޤ

     ܺ٤ϡC++ ޥ˥奢ڡ CC(1)  -xrestrict ɤ
     

     #pragma opt  -xmaxopt Ŭ٥ 

     #pragma opt ȥޥɹԥץ -xmaxopt Ȥ߹碌ơ
     ѥ餬ġδؿŬѤŬ٥ꤹ뤳ȤǤ
     

     Ȥ߹碌ϡȤСåե졼κʤɤΥɳĥ
     򤱤뤿ˡδؿˤĤƺŬ٥򲼤ꡢ뤤
     εդˡδؿˤĤƺŬ٥夲ꤹɬפ
     ͭѤǤ

     ܺ٤ϡC++ ޥ˥奢ڡ CC(1)  -xmaxopt ɤߤ
     

     ץ -xprefetch_auto_type ˤ¹Իѥեޥ󥹤
      

     ץ -xprefetch_auto_type Ѥ뤳Ȥˤäơľ
     ꡼ФƥץեåΤƱˡǡ
     -xprefetch_level=[1|2|3] ؼ롼פФƴܥץեå
     뤳ȤǤޤ

     -xalias_level ʤɤΥץȤ߹碌ȡ
     -xprefetch_auto_type κŬΥåȤȤǤޤ
     Υץϥ꡼̾Τޤӽ
     ΩĤᡢܥץեåη׻Ѷ˱ƶưŪ
     ܥץեå¥ʤޤ

     -xprefetch_auto_type ξܺ٤ϡC++ ޥ˥奢ڡ CC(1)  
     C++ 桼ɡ٤򻲾ȤƤ

     ץ -sync_stdio ˤ¹Իѥեޥ󥹤θ 

     C++  iostreams  C  stdio Ʊ¹Իѥեޥ
     㲼θ 1 ĤǤ뤳ȤޤƱ C++ ʤ
     ɬܤǡǥեȤǤϡѥϤƱͭˤޤ
     Ʊϡ-sync_stdio=no ꤹ뤳Ȥˤä̵ˤ
     뤳ȤǤޤ

     -sync_stdio ץξܺ٤ϡC++ 桼ɡ٤ CC(1) 
     Υޥ˥奢ڡ򻲾ȤƤޤβˤĤ
     ƤϡC++ FAQ٤⻲ȤƤ

     -xustr ˤ UTF-16 Υݡȶ 

     UTF-16 ʸƥΥݡȤϡС 5.5  C++ ѥ
     ƳޤΥ꡼Ǥϡʸ U"x" ʸ˻ 
     U'x' ʸѤ UTF-16 ʸƥ⥵ݡȤ褦ˤʤ
     ƤޤUTF-16 ʸƥǧǤ褦ˤˤϡƱ 
     -xustr ץɬפǤ

     Υ꡼ǤϤޤUTF-16 ʸʸƥοͥ
     פ⥵ݡȤƤޤϡ̾ʸʸƥ
     οͥפ˻Ƥޤʲ򼨤ޤ 

         U"ab\123ef" // ʸ 8 ɽ
         U'\x456'    // ʸ 16 ɽ

     ܺ٤ϡC++ ޥ˥奢ڡ CC(1)  -xustr 򻲾ȤƤ
     

     -xpch ˤץꥳѥѤߥإåեμư 

     Υ꡼ C++ ѥǤϡץꥳѥѤߤΥإå
     ǽĥ졢ѥ¦ǥץꥳѥѤߥإåե
     ưŪǤ褦ˤʤäƤޤޤǤɤꡢץ
     ѥѤߥإåեư뤳ȤǤޤ 
     ѥοǽξܺ٤ϡCC(1) Υޥ˥奢ڡ -xpch 
     ץ򻲾ȤƤޤCCadmin(1) Υޥ˥奢
     ڡ⻲ȤƤ
     


     ------------------------------------------------------------------

     D. եȥν

     ǤϡΥեȥνˤĤޤ

       1. 礭 10 Ŭڤʲ 
       2. :ޤɽ : 󥹥ȥ饯ƤӽФޤϴؿؤΥݥ
           
       3. Solaris 8 update 2 ӥѥåˤ __ctype ̤顼
          ν 
       4. -instance=static  -instance=semiexplicit ȥƥץ졼
          ŪѿΥݡ 
       5. ؿ˥ŪѿФ extern 饤ؿư
          ΰ㤤 
       6. ƥץ졼Ȥιʸ顼θ 

       1. 礭 10 Ŭڤʲ

          C++ ʤǤϡΤʤ 10 ϡͤ int ˼ޤ
           intǤʤ long int ȤưȤʤäƤޤ
          ͤ long int ˤޤʤη̤Ƥ
          

          32 ӥåȥ⡼ɤξ硢 int  long Υӥǡ
          ϤƱǤC++ ѥ 1990 C ʤε§˽äơ
          INT_MAX+1  LONG_MAX ϰϤͤ unsigned long Ȥưä
          ޤץץǤϡΰͽʤ
          Ƥޤ

          1999 C ʤǤϡΤʤ 10 ˴ؤ뤳ε§ѹ
          졢unsigned Ȥưʤʤޤϡintlong
          long long Τκǽͤɽ뷿ˤʤޤ

          ɸ⡼ɤǤϡC++ 5.6 Ϥ C99 §˽ޤ
          -compat=4 ⡼ɤǤϤޤǤɤ C90 ˵§˽ޤ
          (-compat=4 ⡼ɤǤϡѥ C++ 4.2 ѥΤ褦
          ưޤ)

          礭 10  unsigned Ȥưΰܿ
          ǽʲϡu ޤ U Ѥ뤳ȤǤ¾
          ˤ⡢줾Ѥ뤳ȤǤޤʲ
          ޤ

                  // note:2147483648 == (INT_MAX+1)
                  2147483648     // (signed) long long
                  2147483648LL   // (signed) long long
                  2147483648U    // 2147483648u Ʊ

       2. :ޤɽ : 󥹥ȥ饯ƤӽФޤϴؿؤΥ
          

          C++ ǤϡȤȲᤵ줿ꡢޤȤϼȲ
          ᤵǽʸޤC++ Τޤӽ§Ǥϡ
          ʸʸȤߤʤȤǤϡʸʸȤ
          뤳ȤˤʤäƤޤ
          ΥСΥѥǤϡΤ褦ʻäƲ
          Ƥޤ

              struct S {
                S();
              };
              struct T {
                T( const S& );
              };
              T v( S() );    // ???

          ΥץޤϤ餯ǸιԤ S ΰŪͤǽ
          ѿ v ĤǤΥСΥ
          ϡʸ򤽤Τ褦˲ᤷƤޤ

          ƥΥ󥹥ȥ饯ȡ"S()" ϡ"S 
          ᤹ͤѥ᡼Τʤؿ" ̣ (̻Ҥ
          ʤ) ȤߤʤȤǤޤλǤϡؿ
          󥿡"S(*)()" ˼ưŪѴƤޤʸϤޤ
          ͤ T ǡѥ᡼ؿݥ󥿷δؿ v Ȥ
          ƤͭǤ

          ߤǤϥѥ餬򤹤褦ˤʤäΤǡΥ
          ޤտޤ褦ˤʤʤǽޤ

          ޤˤʤʤ褦˥ɤˤϡ 2 ̤
          ˡޤ

              T v1( (S()) );  // v1 ϡ륪֥
              T v2( S(*)() ); // v2 ϡؿ

          1 ܤ 1 Ф;ʬʳ̤ϡv1 ιʸؿȤƤ
          ǤΤǡ"S ΰŪͤǽ T Υ֥
          " Ȥ̣ˤǤޤ

          Ʊͤˡ󥹥ȥ饯ȡ "S(*)()" ͤȤϹͤʤΤǡ
          ؿΰ̣ˤǤޤ

          ǽιԤϡΤ褦˽񤯤ȤǤޤ

              T v1 = S();

          ̣ϴΤˤʤޤνηǤϡ̾
          ǤʤȤϤŪͤȤ礭ͤ
          뤳Ȥޤ

          Τ褦˥ǥ󥰤ΤϤǤޤ ͳϡ
          ̣Τǡѥ餬ۤʤȷ̤ۤʤǽ
          Ǥ

              T v( S() ); // 侩ʤ

       3. Solaris 8 update 2 ӥѥåˤ __ctype ̤顼
          ν

          Solaris 8 ڥ졼ƥ󥰥ƥ꤬ꡢ<stdlib.h> 
          MB_CUR_MAX ѤȡC++ ѥ餫__ctype 
          ƤޤפȤ顼֤뤳Ȥޤ

          ΥХϡSolaris 8 update 2 ڥ졼ƥ󥰥ƥǽ
          ޤϡSolaris ѥå 109607-01 (SPARC)
          109608-01 (x86) Ǥ⽤Ƥޤ

          ΥåץǡǤޤϥѥå򥤥󥹥ȡ뤷Ƥʤ硢
          򤹤ˤϡإå <stdlib.h> 򥤥󥯥롼ɤ
          ɸإå <ctype.h> 򥤥󥯥롼ɤƤ

       4. -instance=static  -instance=semiexplicit ȥƥץ졼
          ŪѿΥݡ

          ΥС C++ ѥǤϡƥץ졼Ū
          ФŪ󥹥󥹥᥽åɤȾŪ󥹥󥹥
          åɤݡȤƤޤǤС 5.2 - 5.6 
          C++ ѥˤϡϤޤ

       5. ؿ˥ŪѿФ extern 饤ؿư
          ΰ㤤

          ARM §Ǥϡextern 饤ؿδؿ˥Ūѿ
          ϥեФŪǤISO ʤǤϡextern 饤
          δؿ˥Ūѿϡѥ˥åȴ֤Ƕͭ
          륰ХѿǤ

          С 5.0  5.1  C++ ѥǤϡߴ 
          (-compat) ɸ (ǥեȤΥ⡼) ΤɤΥ⡼ɤ
           ARM ưƤޤФС 5.2
          5.35.45.5 5.6  C++ ѥǤϡߴ⡼ɤ
          ARM ưɸ⡼ɤ ISO ưƤޤʲ
          򼨤ޤ

          one.cc
          
              inline int inner() { 
                static int variable = 0; return variable++; 
              }
              int outer() { return inner(); }
          
          two.cc
          
              inline int inner() { 
                static int variable = 0; return variable++; 
              }
              int main() { return inner() + outer(); }

          ߴ⡼ (-compat) ǥѥ뤷硢 2 Ĥѿ
          ۤʤꡢmain η̤ 0 ˤʤޤ

          ɸ⡼ (ǥեȥ⡼) ǥѥ뤷ϡ 2
          ĤѿƱˤʤꡢmain η̤ 1 ˤʤޤɸ⡼
          ǸŤưˤˤϡ饤ؿ static ޤ

       6. ƥץ졼Ȥιʸ顼θ

          Υƥץ졼ȤιʸǤSun C++ 4  5.0 Ǥϡ
          顼ˤʤޤǤС 5.1 - 5.6  C++ 
          Ǥϡɸ⡼ (ǥեȤΥ⡼) Υѥǡ
          ʸ顼Ȥ𤵤ޤ

            template<class T> class MyClass<T> { ... }; // 顼
            template<class T> class MyClass<T>;         // 顼

          ɤξ⡢MyClass<T>פΡ<T>פǡ˼
          褦˺ɬפޤ

            template<class T> class MyClass { ... }; // 
            template<class T> class MyClass;         // 
     


     ------------------------------------------------------------------

     E. Ȳ

     ǤϡޤǤˤ狼äƤ륽եȥȤβ
     ĤޤǿޤϥѥåˤĤƤϡ
     http://developers.sun.com/prodtech/cc/support_index.html 
     򻲾ȤƤ 

        1. -instances=static  -xipo ޤ -xcrossfile ȡ
           ˼Ԥ 
        2. Ѥߤ .i ե뤬ѥ륨顼 
        3. ֥󥯥顼 
        4. 󥯻̾沽 
        5. ǥХåġ뤫顢Сؿ;ʬԥѥ᡼
           Ȥäå֤ 
        6. ŪǤϤʤ֤̾Υ֥Ȥƥץ졼Ȥ黲Ȥ
           ʤ 
        7. ̾ #pragma align 沽̾ 
        8. ؿ¿β 
        9. إåɤѤޥåб C++ ץϡ
           Solarais 8 ǥǥХåȥϥ󥰥åפ 

        1. -instances=static  -xipo ޤ -xcrossfile ȡ
           ˼Ԥ

          ƥץ졼ȥץ -instances=static (ޤ -pto)  
          -xcrossfile  -xipo ץȤ߹碌ȡǽޤ
          Ȥ߹碌Ѥץϡ󥯤˼Ԥ뤳Ȥ
          褯ޤ

          -xcrossfile ޤ -xipo ץѤϡǥե
          ȤΥƥץ졼ȥѥǥ -instances=global Ѥ
          Ƥ

          ̤ˡ-instances=static ( -pto) ϻȤʤǤ
          ȤåȤϤǤˤʤȤơC++ 桼
          ɡ٤ƤǥåȤޤ

       2. Ѥߤ .i ե뤬ѥ륨顼

          __global ϡ xldscope ѥ饪ץΰȤ
          C++ 5.5 ɲä줿ɤǤѤߤ .i ե
          ŤѥѤ³Ƥ .i ե
          С 5.5 ޤ 5.6 ǥѥ뤹ϡ .i ե
          ǥ __global ̻ҤȤƻѤƤȡ
          顼åɽ뤳Ȥޤ 

          褹ˤϡ.i եƬ 
          #pragma disable_ldscope ɲäƤΥɤŤ
          ѥоݤȤƤ硢󥫡ԥ󥰥
           (__global ʤ) ϻѤǤޤ󡣤ۤΥե
          󥯥롼ɤϡ.i եκǸ 
          #pragma enable_ldscope ȤԤɲäǤޤ

       3. ֥󥯥顼

          -xlang=f77 ޥɤ¹Ԥȡѥץ˥
          顼ȯޤ顼򤹤ȤȤŬڤʼ¹Ի
          饤֥򥤥󥯥롼ɤˤϡ -xlang=f77,f90 
          ¹Ԥޤ

       4. 󥯻̾沽

          ξˡ󥯻꤬ȯ뤳Ȥޤ

             o const ѥ᡼դƤؿ̤ξ 
               const ѥ᡼ʤƤ롣 

               :

                 void foo1(const int);
                 void foo1(int);

               Ǥѥϰۤʤ沽̾
               ޤ򤹤ˤϡͤΥѥ᡼ const 
               ȤʤǤȤСؿΤʤ
               Τ void foo1(int); Ѥޤ

               ؿƱʣ緿Υѥ᡼ 2 ĤꡢΥѥ᡼
                typedef Ƥ롣 

               :

                 class T;
                 typedef T x;
                 // foo2 ʣ緿 (ݥ󥿤ޤ)
                 // ѥ᡼
                 void foo2(T*, T*)
                 void foo2(T*, x*);
                 void foo2(x*, T*);
                 void foo2(x*, x*);

               ٤Ƥ foo2 ǡƱ:w 沽
               ɬפޤѥϰ˰ۤʤä
               ԤʤäƤޤ򤹤ˤϡӤ 
               typedef Ѥޤ

               typedef ӤƻѤǤʤϡȤơؿ
               Ƥե weak ܥѤȤ
               ˤޤʲ򼨤ޤ

               #pragma weak "__1_undefined_name" = "__1_defined_name" 

                -- 沽̾ϡåȥƥˤä
               ۤʤޤȤС size_t  SPARC V9 ƥ
               Ǥ unsigned long ǤʳΥƥǤϡ
               unsigned int Ǥϡ2 ĤΰۤʤäС
               沽̾줾 1 ĤΥǥ¸ߤ륱Ǥ
               褦ʾϡ2 ĤΥץ饰ޤѰդŬڤ #if 
               椹ɬפޤ

          ܺ٤ϡC++ ܹԥɡ٤򻲾ȤƤΥޥ˥奢
           HTML Ǥ˥ˤϡ֥饦 
          file:/opt/SUNWspro/docs/ja/index.html 򳫤ޤ

           -Sun Studio 9 եȥ/opt ʳ˥󥹥ȡ뤵
          Ƥϡ ѤΥƥˤºݤΥѥ򡢥ƥ
          Ԥ˳ǧƤ

       5. ǥХåġ뤫顢Сؿ;ʬԥѥ᡼
          Ȥäå֤

          ߴ⡼ (-compat=4) ǤϡC++ ѥϥСؿ
          ݥ󥿤Υ̾沽ޤ󡣤Υ顼Τᡢ
          沽ץपӡ dbx  c++filt ʤɤΥǥХåġ
          顢Сؿ;ʬԥѥ᡼ (Сؿ°
          Ƥ륯饹פ򼨤) 𤵤ޤ
          褹ˤϡ-Qoption ccfe -abiopt=pmfun1 ե饰ɲäޤ
          ̤ˡΥե饰Ѥƥ򥳥ѥ뤹ȡ
          Υե饰ʤǥѥ뤷Ȥδ֤ΥХʥ٥
          ߴ뤳Ȥޤɸ⡼ (ǥեȥ⡼)
          Ǥϡϵޤ

       6. ŪǤϤʤ֤̾Υ֥Ȥƥץ졼Ȥ黲Ȥ
          ʤ

          ץǥƥץ졼ȤŪ֥ȤѤƤȡ
          ̤ܥΥ󥯻顼ȯޤߥѥϡ
          ŪǤʤ֥̾פΥ֥ȤФƥץ졼
          ȤλȤ򥵥ݡȤޤ󡣼ǹͤƤߤƤ

          static int k;
          template<class T> class C {
                  T foo(T t) { ... k ... }
          };

          Ǥϡƥץ졼ȥ饹ΥСŪ֥̾
          ѿ򻲾Ȥޤ֥̾פϥե륹פ
          ޤळȤդƤѥϡŪ֥̾
          ѿ򻲾Ȥƥץ졼ȥ饹ΥС򥵥ݡȤ
          ޤʣΥѥñ̤ƥץ졼Ȥ󥹥󥹲
          ȡƥ󥹥󥹤ϰۤʤ k 򻲾Ȥޤ ĤޤꡢC++
          ODR (One-Definition Rule) ȿȯɤƤ
          ʤư򵯤ޤ

          桼ϡk ɤΤ褦˻Ѥk ˤäƤɤΤ褦
          ̤ˤȤŤ˼ˡ»ܤǤޤ2 
          ܤΥץϡ饹ΥСδؿƥץ졼ȤˤΤ
          ѤǤޤ 

            1. ѿ˳󥱡 

               int k; // ŪǤϤʤ

               ٤ƤΥ󥹥󥹤ϡk ƱԡѤޤ 
            2. ѿ򥯥饹ŪСˤ 
               template<class T> class C {
                       static int k;
                       T foo(T t) { ... k ... }
               };      
               Ūʥ饹Сϳ󥱡ޤ
               C<T>::foo Υ󥹥󥹤Ѥ k Ϥ줾ۤʤ
               C<T>::k Υ󥹥󥹤ϡ¾δؿǶͭ뤳Ȥ
               ޤ̾ϤΥץ󤬻Ѥޤ 
            3. ѿؿФƥˤ
               template<class T> class C {
                            T foo(T t) { static int k; ... k ... }
               };
                C<T>::foo Υ󥹥󥹤ϡؿγϸʤ
               ȼ k ΥԡѤޤ 

       7. ̾ #pragma align 沽̾

          ̾ #pragma align Ѥϡ沽̾Ѥ
          ɬפޤȤСΥɤǤϡ#pragma align ʸ
          ϲƯ⤷ޤ󡣤褹ˤϡ#pragma align 
          ʸ ab c 򤽤줾沽֤̾ɬפ
          ޤ

            namespace foo {
              #pragma align 8 (a, b, c) // ͭǤʤ
              // 沽̾:
              #pragma align 8 (__1cDfooBa_, __1cDfooBb_, __1cDfooBc_)
              static char a;
              static char b;
              static char c;
            }

          8.ؿ¿β

          C++ ѥΰΥ꡼ǤϡC++ ɸ׷˽äƴ
          ¿βԤޤǤΥ꡼Ǥϡ¿
          줿ؿθƤӽФ褷ơ¿ΥХƤ
          ޤäˡѥϡƤӽФºݤˤޤʾϴ
          ԥå󥰤ꡢºݤˤϤǤʤˤ⡢ƤӽФ
          ޤǤɽꤹ礬ޤ

          ޤǤ뤳Ȥ򼨤å˴ؤˤϡפ
          Τ⤢ޤˤ𤵤ʤäޤ˴ؤ뿷
          顼ȯƤޤ

          ޤʴؿƤӽФμʸ 1 ĤϡȤ߹߷Υ֥
          åȤˤ¿ȯ뤳ȤǤ
             
          int f1(short);
          int f1(float);
          ...
          f1(1); // ޤ "1"  int 
          f1(1.0); // ޤ"1.0"  double 

          ˤϡf1 褷¿ʤ뤤
          ĥʤ٤Ƥη (intunsigned intlongunsigned 
          longdouble) ¿Ԥޤ (long longunsigned long 
          long  long double ⤢ޤ)
          ⤦ 1 Ĥμʸϥ饹ˤ뷿Ѵؿǡä¿
          줿黻Ҥ¸ߤǤ

          class T {
          public:
                  operator int();
                  T(int);
                  T operator+(const T&);
          };
          T t;
          1 + t // ޤ

          α黻ϡΤ褦˲ǤΤǡޤǤ

          T(1) + t     // ¿줿黻
          1 + t.operator int()    // Ȥ߹ߤ int ɲ

          ¿줿黻ҤޤϷѴؿѤǤޤξ
          ѤȡޤȽǤޤ

          ºݡѴؿΤΤϡޤȽǤ줿ꡢտޤ
          äѴȯꤹ뤳ȤӤӤޤѴ
          ͭˤɬפϡѴؿǤϤʤ̾դؿ
          ѤƤȤСoperator int();  
          int to_int(); Ѥޤ

          ѹˤꡢ黻 1 + t ϤޤǤϤʤʤޤ
          T(1) + t ȤǤޤ󡣤ۤβ᤬ɬפʾϡ
          褦˵Ҥɬפޤ 

          1 + t.to_int().

       9. إåɤѤޥåб C++ ץϡ
          Solarais 8 ǥǥХåȥϥ󥰥åפ

          /usr/lib/lwp/ ˤإåɥ饤֥Ѥƹۤ
          ޥåб C++ ץϡSolari 8 ڥ졼
          ƥ󥰥ƥǥǥХå褦Ȥȡϥ󥰥åפޤ
          -R /usr/lib/lwp ѥ饪ץǹۤ 32 ӥåȥޥ
          åб C++ ץϡdbx Ǽ¹Ԥȥϥ󥰥
          פޤ-R /usr/lib/lwp/sparcv9 ѥ饪ץǹ
           64 ӥåȥޥåб C++ ץϡ¹Ի
          ԤʤäƤˤäˡϥ󥰥åפǽ
          

          θݤϡC++ ɤɸ (ǥե) ⡼ɤ (-compat=5
          ѥ饪ץѤ) ѥ뤷˵
           ߴ⡼ɤ (-compat ѥ饪ץѤ) 
          ѥ뤷ˤϵޤ 

          ѥեޥĴŪإåɥ饤֥λѤͤ
          ƤΤǤСޤǥեȤΥåɥ饤֥
          ơޥåбΥץǥХåإ
          ɥ饤֥ϡθǻѤƤ

          ϡSolaris 8 ǤΤȯޤ
     


     ------------------------------------------------------------------

     F. »ȸߴ

     Ǥϡ»पӥƥޤϤ¾ΥեȥȤθߴ
     ˤĤޤSun Studio 9 ꡼κǿˤĤ
     Ƥϡhttp://docs.sun.com ǽʥ꡼ΡȤǧƤ
     ꡼ΡȤξϡʤ Readme եξͥ
     褷ޤ

       1. -xia  -library=stlport4 θߴ

          C++ ֱ黻ǽ STLport C++ 饤֥ȤȤ˻Ѥ뤳
          ϤǤޤ-xia ץѤץϡC++ 
          Interval Arithmetic Programming Reference٤ɤ˥
          ѥ뤪ӥ󥯤뤳ȤǤޤ 

       2. C++ ͭ饤֥Υѥå

          бץåȥեˤĤơΥ꡼ Sun Studio 9
          ǥݡȤ Solaris ڥ졼ƥ󥰴ĶΥС󤴤Ȥ
          SUNWlibC ѥå 1 ѰդƤޤΥѥåϡ
          ˻Ѥ륷ƥǤʤ줿ץƯ
          뤹٤ƤΥƥ˥󥹥ȡ뤹ɬפޤ
          Υѥå򥤥󥹥ȡ뤷ʤȡΥץब󥯤
          ʤäꡢ¹Ի顼ǰ۾ｪλꤹ뤳Ȥޤ
          ȤС󥫡鼡Τ褦ʥå𤵤뤳Ȥ
          ޤ

          Undefined symbol                           First referenced
                                                     in file
          std::ostream
          &operator<<(std::ostream&,const RWCString&)test.o

              ld: fatal: Symbol referencing errors.No output written to test
          Τ褦ʥ顼å֤뤳Ȥ⤢ޤ

              Hint: try checking whether the first non-inlined, 
              non-pure virtual function of ... 
                
           Sun Studio 9 ꡼ѤɬܤǤեѥåˤĤƤϡ
          Sun Studio 9  Web ȡ
          http://developers.sun.com/prodtech/cc/support_index.html 
          ȤƤ 

       3. ѥΥС֤θߴ

          ǤϡC++ ѥС 4.04.14.2 ȼ˼
          С֤θߴˤĤޤ

                  o Sun WorkShop C++ (5.0) ѥ 
                  o Forte Developer 6 C++ (5.1) ѥ 
                  o Forte Developer 6 update 1 C++ (5.2) ѥ 
                  o Forte Developer 6 update 2 C++ (5.3) ѥ 
                  o Forte Developer 7 C++ (5.4) ѥ 
                  o Sun Open Net Environment (Sun ONE) Studio 8 
                    C++ (5.5) ѥ 
                  o Sun Studio 9 (5.6) ѥ 

            a. åСΰ㤤ˤ륳ѥ륨顼 
            b. C++ 󥿥եθߴ 
            c. Tools.h++ λ 
            d. ʣΥƥץ졼ȥݥȥλ -ptr ץ̵
                
            e. const СؿΥݥ󥿤ޤ 4.0.1 饤֥Ȥ
                
            f. Υѥǥѥ뤷饤֥ȤΥ 
            g. ۤʤС줿֥ȥɤκ 
     
            a. åСΰ㤤ˤ륳ѥ륨顼

               ѥѹȤϡɬ SunWS_cache ֥ǥ
               ȥޤह٤ƤΥǥ쥯ȥФ CCadmin -clean 
               (rm -rf SunWS_cache Ǥ) ¹ԤƤ 
               ԤʤȡΤ褦ʥѥ륨顼ȯ뤳
               ޤ

                  + SunWS_cache: Error: Database version mismatch
                    <path>/SunWS_cache/CC_version.
                  + "<path>/SunWS_cache/CC_state",
                    line 3: Error: "" not allowed here. ** Assertion **
                    : 0 
               
            b. C++ 󥿥եθߴ

               С 5.0  5.6  C++ ѥȥС 4.0
               4.1 4.2  C++ ѥȤδ֤˥Хʥ٥
               θߴϤޤ (5.0 - 5.6 Υѥˤ륳
                -compat ץѤ)ϡ
               ANSI/ISO C++ ʤƤͤ˹碌ơ饹
               ֤ƤӽФν̾沽ˡѹ줿
               Ǥ

               С 5.0 - 5.6  C++ ѥˤϡХʥ
               θߴޤ

               ܺ٤ϡC++ ܹԥɡ٤򻲾ȤƤΥޥ˥
                HTML Ǥ˥ˤϡ֥饦 
               file:/opt/SUNWspro/docs/ja/index.html 򳫤ޤ
               Solaris ץåȥեξ硢ǥեȤΥ󥹥ȡ
               ǥ쥯ȥϡ/opt ǤSun Studio 9 եȥ 
               /opt ʳΥǥ쥯ȥ˥󥹥ȡ뤵Ƥϡ
               ѤΥƥˤºݤΥѥ򡢥ƥԤ˳
               ǧƤ

            c. Tools.h++ λ

               C++ ѥϡǥեȤɸ iostream Ѥ
               Tools.h++ ɸ⡼ɤǻѤϡ
               -library=rwtools7_std ץѤ뤫ޤϼ
               褦ˡѥ饪ץ libiostream ꤹ
               ɬפޤ

               example% CC -library=rwtools7_std foo.cc -> ɸ iostreams 
               example% CC -library=rwtools7_std foo.cc ->  iostreams 

               (-compat ѥ饪ץѤ) ߴ
               ⡼ɤǤϡɸ饤֥꤬ѤǤʤᡢ
               -library=rwtools7_std ꤹ뤳ȤϤǤޤ

               example% CC -compat foo.cc -library=rwtools7 -> ߴ⡼ɤǤɸ饤֥ѤǤʤ
               
               -library=rwtools7-library=rwtools7_dbg
               -library=rwtools7_stdޤ-library=rwtools7_std_dbg  
               -library=stlport4 ȤȤ˻ѤʤǤ
               Tools.h++  STLport ǤϥݡȤƤޤ

               -library=rwtools7_std ץ 
               -library=rwtools7,iostream ץ줿Х
               ֤˸ߴϤޤ󡣤Υץɤ줫
               ϡѥ뤪ӥ󥯤Τ CC ޥ
               ƱץѤƤ

               ޤC++ ܹԥɡ٤⻲ȤƤΥޥ˥奢
                HTML Ǥ˥ˤϡ֥饦 
               file:/opt/SUNWspro/docs/ja/index.html 򳫤ޤ
               Solaris ץåȥեξ硢ǥեȤΥ󥹥ȡ
               ǥ쥯ȥϡ/opt ǤSun Studio 9 եȥ 
               /opt ʳΥǥ쥯ȥ˥󥹥ȡ뤵Ƥϡ
               ѤΥƥˤºݤΥѥ򡢥ƥԤ˳
               ǧƤ

            d. ʣΥƥץ졼ȥݥȥλ -ptr ץ̵
                

                -- ǥեȤǤΥƥץ졼ȥݥȥκѻߤ
               ޤѥ˥ݥȥˤϡŪ
                -instances=extern ꤹɬפޤ

               5.0  C++ ѥǤϡ-ptr ץѤ
               ơƥץ졼ȤΥ󥹥󥹲˻Ѥݥȥ
               ꤷƤޤС 5.0 - 5.6  C++ ѥ
               ϡ-ptr ץפǤ ϡѥ륷
               बɤ߼륪֥ȥեбƥץ졼
               ݥȥ˴ޤޤƤƥץ졼ȥ󥹥󥹤CC 
               ޥɤǻꤵ줿ǥ쥯ȥΥݥȥ˽
               िǤ

               -ptr ץϡ 5.5 C++ ѥѻߤޤ
               ѥϡ-ptr ץ̵뤷ޤץ
               ̵뤵ȤƤ⡢٤ƤΥѥ륳ޥɤ -ptr
               ϺƤƤ ͳϡΥ꡼ǡ
               ̤ưԤ -ptr Ƽǽ뤿Ǥ

                -- ʣΥץꥱ饤֥δ֤ 1 Ĥ
               ƥץ졼ȥݥȥͭ뤳ȤϡǤޤ
               󡣶ͭ褦Ȥȡѥ뤬Ԥʤ
               ꡢξϡƥץ졼Ȥơ¹Ի
               ͽ¬Ǥʤ̤ޤܺ٤ϡC++ 桼
               ɡ٤򻲾ȤƤ

               Υޥ˥奢 HTML Ǥ˥ˤϡ֥饦 
               file:/opt/SUNWspro/docs/ja/index.html 򳫤ޤ
               Solaris ץåȥեξ硢ǥեȤΥ󥹥ȡ
               ǥ쥯ȥϡ/opt ǤSun Studio 9 եȥ 
               /opt ʳΥǥ쥯ȥ˥󥹥ȡ뤵Ƥϡ
               ѤΥƥˤºݤΥѥ򡢥ƥԤ˳
               ǧƤ

            e. const СؿΥݥ󥿤ޤ 4.0.1 饤֥Ȥ
               

               C++ 4.0.1 ѥ餬 const СؿΥݥ󥿤
               沽̾ϡС 4.14.25.0 - 5.6 
                C++ ѥ餬ƤȤϰۤʤޤC++ 
               ѥѤƤơ4.0.1 ǹۤ줿沽̾ޤ
               饤֥ȥ󥯤ǤʤϡΥ饤֥ƥ
               ѥ뤹뤫-compat -Qoption ccfe -abirel=4.0.1 ե饰
               ꤷơץλĤʬ򥳥ѥ뤹ɬפ
               ޤ 

                -- Υ꡼Ǥ -abirel=4.0.1 ץΥ
               ݡȤѻߤǽޤ

            f. Υѥǥѥ뤷饤֥ȤΥ

               C++ 4.0.1  C++ 4.1 ѥǤϡextern "C" ؿ
               ǥ󥹥󥹲줿ƥץ졼ȤФơԲǽ
               沽̾ƤޤäơǥХåġ
               ưޤǤϲ褵ޤ
               桼顢С 5.0 - 5.5  C++ ѥ
               ǥѥ뤷֥ȤСΥѥ
               ѥ뤷饤֥ȥ󥯤ǤʤȤ𤬤
               Ϥޤˤȯޤ󤬡ȯϡ
               Τɤ餫ԤʤäƤ

                  + Sun Studio 9 C++ (5.6) ѥѤƥ饤֥
                    ƥѥ뤹뤫뤤 
                  + -compat  -Qoption ccfe -abirel=4.1 ե饰
                    ѤơSun Studio 9 C++ (5.6) ѥǿ
                    ֥Ȥ򥳥ѥ뤹롣 

                -- Υ꡼Ǥ -abirel=4.1 ե饰ΥݡȤ
               ѻߤǽޤ

            g. ۤʤС줿֥ȥɤκ

               ߴ⡼ɤɸ⡼ɤΥɤ򺮺ߤƤʤ¤ꡢ
               ʤС C++ ѥ֥
               ɤƱץ˺ߤ뤳ȤǤޤ
               ǽץΥ󥯤ˤϡѤƤ륳ѥ
               ǺǿΥСѤɬפޤ

                -- С 4.2 ɤɸ⡼ɤ C++ 
               ɤ󥯤뤳ȤϤǤޤ
     


     ------------------------------------------------------------------

     G.Ҥθ

     ǤϿϤޤ
     


     ------------------------------------------------------------------

     H.饤֥κۤˤĤ

        * ¹Բǽե뤬Υե˼줿ưŪ饤֥
          ɬפȤϡ饤󥹤ˤȤŤơΥ饤
          ۤǤޤ

             /opt/SUNWspro/READMEs/ja/runtime.libraries 

           - Sun Studio 9 եȥ /opt ʳΥǥ쥯ȥ
          󥹥ȡ뤵ƤϡѤΥƥˤºݤ
          ѥ򡢥ƥԤ˳ǧƤ 

          ɤΤ褦ʷ֤Ǥ⡢إåե롢ɡ֥
          ȥ⥸塼롢֥ȥ⥸塼Ū饤֥軰
          Ԥա뤳ȤϤǤޤ

          ѥ饤󥹤ϡCD-ROM Υ΢̤ˤ륨ɥ桼
          ֥ȥɥ饤󥹤˵ܤƤޤ

        * libCstd  (ޤ) libiostream ζͭ饤֥С
          Ѥϡ 2 ĤΥץ󤬤ޤ 
            1. ʤȤä SUNWlibC ѥåۤޤ ޤ 
            2. ޤ http://www.sunsolve.sun.com Τ褦ʥ 
               Web Ȥǿ SUNWlibC ѥåɤɬ
               פޤΥѥå̵ǡ٤Ǥ۲ǽǤ

          ɤꡢ饤֥Ū˥󥯤ϡʳΥ
          ⥢ɬפޤ󡣰ۤʤСΥ
          졼ƥ󥰥ƥǤΥץθߴǧˤϡ
          ͭ饤֥˥󥯤ޤ
     


     ------------------------------------------------------------------

     I. ̤бθ

        * C++ ѥ (CC) ϡC++ISO IS 14882:1998ץߥ
           C++  ISO ʤбƤޤΥ꡼Ǥϥ
          ݡȤƤʤ ISO ʤ׷򼡤ΥꥹȤޤ

             o Τ褦ʡؿƥץ졼Ȥδؿѥ᡼ꥹ
               ƥץ졼Ȥη̾Ǥʤѥ᡼ޤ༰ 

               template<int I> void foo(mytype<2*I> ) { ... }

             o ƥץ졼ȥѥ᡼ƥץ졼 (ʥƥץ졼
               ѥ᡼ȤƤΥƥץ졼)

             o ʸ̾

             o ƥץ졼ȥѥΥݡȥǥ

        * C++ ѥθԥ꡼ȵ꡼ΥХʥߴ
          뤿ᡢ libCstd ǽƤޤ 
          file:/opt/SUNWspro/docs/ja/index.html  C++ FAQ ˴ؤ
          Ĵ٤ƤSolaris ץåȥեξ硢ǥե
          ȤΥ󥹥ȡǥ쥯ȥϡ/opt ǤSun Studio 9 
          ȥ /opt ʳΥǥ쥯ȥ˥󥹥ȡ뤵Ƥ
          ϡѤΥƥˤºݤΥѥ򡢥ƥԤ
          ǧƤ 
     


     ------------------------------------------------------------------

     Copyright (c) 2004 Sun Microsystems, Inc. All rights reserved.
     Use is subject to license terms.
