• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            luke

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              3 隨筆 :: 0 文章 :: 0 評論 :: 0 Trackbacks
            以前一直沒有關心std::endl的工作機制,最近突然想一窺究竟,于是下載了sgi的stl(http://www.sgi.com/tech/stl/)實現,
            于是恍然大悟,對其實現者真是敬佩。

            在文件Ostream中class basic_ostream 有如下成員函數:

             basic_ostream& operator<< (basic_ostream& (*__f)(basic_ostream&))
                { return __f(*this); }

             basic_ostream& operator<< (_Basic_ios& (*__f)(_Basic_ios&))
                { __f(*this); return *this; }

             basic_ostream& operator<< (ios_base& (*__f)(ios_base&))
                { __f(*this); return *this; }

            然后有如下全局函數:
            template <class _CharT, class _Traits>
            inline basic_ostream<_CharT, _Traits>&
            endl(basic_ostream<_CharT, _Traits>& __os) {
              __os.put(__os.widen('\n'));
              __os.flush();
              return __os;
            }

            可見原來我們經常使用的cout<<.....<<endl中的endl竟然是一個函數指針,由此我們還可以找到如下定義:

            // basefield manipulators, section 27.4.5.3
            inline ios_base& dec(ios_base& __s)
              { __s.setf(ios_base::dec, ios_base::basefield); return __s; }

            inline ios_base& hex(ios_base& __s)
              { __s.setf(ios_base::hex, ios_base::basefield); return __s; }

            inline ios_base& oct(ios_base& __s)
              { __s.setf(ios_base::oct, ios_base::basefield); return __s; }

            原來這些我們經常見到的C++流輸出格式符居然都是一些函數,都是通過重載<<操作符來實現的。

            posted on 2009-04-01 15:15 盧克 閱讀(873) 評論(0)  編輯 收藏 引用
            亚洲欧美伊人久久综合一区二区| 奇米影视7777久久精品| 久久人人爽人人爽人人片AV东京热| 欧美亚洲另类久久综合婷婷 | 久久超乳爆乳中文字幕| 99久久精品国产一区二区蜜芽| 亚洲一区精品伊人久久伊人| 久久精品中文闷骚内射| 久久久高清免费视频| 久久夜色tv网站| 午夜天堂av天堂久久久| 亚洲婷婷国产精品电影人久久 | 久久久亚洲AV波多野结衣| 一级做a爱片久久毛片| 久久久噜噜噜久久熟女AA片| 日韩影院久久| 久久久99精品成人片中文字幕| 久久91精品国产91久久户| 亚洲va久久久噜噜噜久久男同| 欧美国产精品久久高清| 99久久国产综合精品五月天喷水| 久久久婷婷五月亚洲97号色 | 久久夜色撩人精品国产| 99久久99久久精品国产| 青青草国产精品久久久久| 99久久er这里只有精品18| 日韩久久久久久中文人妻| 久久天天躁狠狠躁夜夜avapp| 欧美一区二区久久精品| 国内精品久久国产| 亚洲国产小视频精品久久久三级| 日韩美女18网站久久精品| 久久99热这里只有精品66| 少妇熟女久久综合网色欲| 国产一区二区久久久| 欧美国产成人久久精品| 亚洲乱码精品久久久久..| 嫩草伊人久久精品少妇AV| 久久se精品一区二区| 久久精品国产91久久麻豆自制| 一本大道久久a久久精品综合 |