• <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)  編輯 收藏 引用
            国产精品久久久久蜜芽| 久久综合丝袜日本网| 2021最新久久久视精品爱| 久久婷婷是五月综合色狠狠| 国产精品久久久久久搜索| 亚洲香蕉网久久综合影视| 亚洲综合久久夜AV | 久久国产精品免费一区| 韩国无遮挡三级久久| 一本一本久久a久久综合精品蜜桃| 成人国内精品久久久久一区 | 久久97精品久久久久久久不卡| 激情综合色综合久久综合| 欧洲精品久久久av无码电影| 欧美日韩精品久久久免费观看| 99久久99这里只有免费费精品 | 99久久国产免费福利| 久久66热人妻偷产精品9| 狠狠色丁香婷婷久久综合五月| 久久亚洲国产精品一区二区| 三上悠亚久久精品| 久久99久久99精品免视看动漫| 久久综合久久自在自线精品自| 伊人色综合九久久天天蜜桃| 久久激情五月丁香伊人| 中文字幕精品久久久久人妻| 精品无码久久久久久久动漫| 久久se精品一区精品二区| 国产成人无码久久久精品一| 久久国产热精品波多野结衣AV| 久久九九亚洲精品| 97久久精品无码一区二区| 无码人妻久久一区二区三区免费丨 | 亚洲AV日韩AV天堂久久| 少妇久久久久久被弄高潮| 亚洲AV日韩AV天堂久久| 国产综合久久久久| 久久中文字幕一区二区| 久久久WWW成人免费毛片| 欧美亚洲国产精品久久| 麻豆精品久久久久久久99蜜桃 |