⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ios_base.h

📁 openRisc2000编译链接器等,用于i386 cygwin
💻 H
📖 第 1 页 / 共 2 页
字号:
      { return __gnu_cxx::__exchange_and_add(&_M_refcount, -1); }    };     _Callback_list*	_M_callbacks;    void    _M_call_callbacks(event __ev) throw();    void    _M_dispose_callbacks(void);    // 27.4.2.5  Members for iword/pword storage    struct _Words    {      void*	_M_pword;      long	_M_iword;      _Words() : _M_pword(0), _M_iword(0) { }    };    // Only for failed iword/pword calls.    _Words		_M_word_zero;    // Guaranteed storage.    // The first 5 iword and pword slots are reserved for internal use.    static const int	_S_local_word_size = 8;    _Words		_M_local_word[_S_local_word_size];    // Allocated storage.    int			_M_word_size;    _Words*		_M_word;    _Words&    _M_grow_words(int __index, bool __iword);    // Members for locale and locale caching.    locale		_M_ios_locale;    void    _M_init();  public:    // 27.4.2.1.6  Class ios_base::Init    // Used to initialize standard streams. In theory, g++ could use    // -finit-priority to order this stuff correctly without going    // through these machinations.    class Init    {      friend class ios_base;    public:      Init();      ~Init();    private:      static _Atomic_word	_S_refcount;      static bool		_S_synced_with_stdio;    };    // [27.4.2.2] fmtflags state functions    /**     *  @brief  Access to format flags.     *  @return  The format control flags for both input and output.    */    inline fmtflags    flags() const { return _M_flags; }    /**     *  @brief  Setting new format flags all at once.     *  @param  fmtfl  The new flags to set.     *  @return  The previous format control flags.     *     *  This function overwrites all the format flags with @a fmtfl.    */    inline fmtflags    flags(fmtflags __fmtfl)    {      fmtflags __old = _M_flags;      _M_flags = __fmtfl;      return __old;    }    /**     *  @brief  Setting new format flags.     *  @param  fmtfl  Additional flags to set.     *  @return  The previous format control flags.     *     *  This function sets additional flags in format control.  Flags that     *  were previously set remain set.    */    inline fmtflags    setf(fmtflags __fmtfl)    {      fmtflags __old = _M_flags;      _M_flags |= __fmtfl;      return __old;    }    /**     *  @brief  Setting new format flags.     *  @param  fmtfl  Additional flags to set.     *  @param  mask  The flags mask for @a fmtfl.     *  @return  The previous format control flags.     *     *  This function clears @a mask in the format flags, then sets     *  @a fmtfl @c & @a mask.  An example mask is @c ios_base::adjustfield.    */    inline fmtflags    setf(fmtflags __fmtfl, fmtflags __mask)    {      fmtflags __old = _M_flags;      _M_flags &= ~__mask;      _M_flags |= (__fmtfl & __mask);      return __old;    }    /**     *  @brief  Clearing format flags.     *  @param  mask  The flags to unset.     *     *  This function clears @a mask in the format flags.    */    inline void    unsetf(fmtflags __mask) { _M_flags &= ~__mask; }    /**     *  @brief  Flags access.     *  @return  The precision to generate on certain output operations.     *     *  @if maint     *  Be careful if you try to give a definition of "precision" here; see     *  DR 189.     *  @endif    */    inline streamsize    precision() const { return _M_precision; }    /**     *  @brief  Changing flags.     *  @param  prec  The new precision value.     *  @return  The previous value of precision().    */    inline streamsize    precision(streamsize __prec)    {      streamsize __old = _M_precision;      _M_precision = __prec;      return __old;    }    /**     *  @brief  Flags access.     *  @return  The minimum field width to generate on output operations.     *     *  "Minimum field width" refers to the number of characters.    */    inline streamsize    width() const { return _M_width; }    /**     *  @brief  Changing flags.     *  @param  wide  The new width value.     *  @return  The previous value of width().    */    inline streamsize    width(streamsize __wide)    {      streamsize __old = _M_width;      _M_width = __wide;      return __old;    }    // [27.4.2.4] ios_base static members    /**     *  @brief  Interaction with the standard C I/O objects.     *  @param  sync  Whether to synchronize or not.     *  @return  True if the standard streams were previously synchronized.     *     *  The synchronization referred to is @e only that between the standard     *  C facilities (e.g., stdout) and the standard C++ objects (e.g.,     *  cout).  User-declared streams are unaffected.  See     *  http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#8 for more.    */    static bool    sync_with_stdio(bool __sync = true);    // [27.4.2.3] ios_base locale functions    /**     *  @brief  Setting a new locale.     *  @param  loc  The new locale.     *  @return  The previous locale.     *     *  Sets the new locale for this stream, and then invokes each callback     *  with imbue_event.    */    locale    imbue(const locale& __loc);    /**     *  @brief  Locale access     *  @return  A copy of the current locale.     *     *  If @c imbue(loc) has previously been called, then this function     *  returns @c loc.  Otherwise, it returns a copy of @c std::locale(),     *  the global C++ locale.    */    inline locale    getloc() const { return _M_ios_locale; }    /**     *  @brief  Locale access     *  @return  A reference to the current locale.     *     *  Like getloc above, but returns a reference instead of     *  generating a copy.    */    inline const locale&    _M_getloc() const { return _M_ios_locale; }    // [27.4.2.5] ios_base storage functions    /**     *  @brief  Access to unique indices.     *  @return  An integer different from all previous calls.     *     *  This function returns a unique integer every time it is called.  It     *  can be used for any purpose, but is primarily intended to be a unique     *  index for the iword and pword functions.  The expectation is that an     *  application calls xalloc in order to obtain an index in the iword and     *  pword arrays that can be used without fear of conflict.     *     *  The implementation maintains a static variable that is incremented and     *  returned on each invocation.  xalloc is guaranteed to return an index     *  that is safe to use in the iword and pword arrays.    */    static int    xalloc() throw();    /**     *  @brief  Access to integer array.     *  @param  __ix  Index into the array.     *  @return  A reference to an integer associated with the index.     *     *  The iword function provides access to an array of integers that can be     *  used for any purpose.  The array grows as required to hold the     *  supplied index.  All integers in the array are initialized to 0.     *     *  The implementation reserves several indices.  You should use xalloc to     *  obtain an index that is safe to use.  Also note that since the array     *  can grow dynamically, it is not safe to hold onto the reference.    */    inline long&    iword(int __ix)    {      _Words& __word = (__ix < _M_word_size)			? _M_word[__ix] : _M_grow_words(__ix, true);      return __word._M_iword;    }    /**     *  @brief  Access to void pointer array.     *  @param  __ix  Index into the array.     *  @return  A reference to a void* associated with the index.     *     *  The pword function provides access to an array of pointers that can be     *  used for any purpose.  The array grows as required to hold the     *  supplied index.  All pointers in the array are initialized to 0.     *     *  The implementation reserves several indices.  You should use xalloc to     *  obtain an index that is safe to use.  Also note that since the array     *  can grow dynamically, it is not safe to hold onto the reference.    */    inline void*&    pword(int __ix)    {      _Words& __word = (__ix < _M_word_size)			? _M_word[__ix] : _M_grow_words(__ix, false);      return __word._M_pword;    }    // Destructor    /**     *  Invokes each callback with erase_event.  Destroys local storage.     *     *  Note that the ios_base object for the standard streams never gets     *  destroyed.  As a result, any callbacks registered with the standard     *  streams will not get invoked with erase_event (unless copyfmt is     *  used).    */    virtual ~ios_base();  protected:    ios_base();  // _GLIBCXX_RESOLVE_LIB_DEFECTS  // 50.  Copy constructor and assignment operator of ios_base  private:    ios_base(const ios_base&);    ios_base&    operator=(const ios_base&);  };  // [27.4.5.1] fmtflags manipulators  /// Calls base.setf(ios_base::boolalpha).  inline ios_base&  boolalpha(ios_base& __base)  {    __base.setf(ios_base::boolalpha);    return __base;  }  /// Calls base.unsetf(ios_base::boolalpha).  inline ios_base&  noboolalpha(ios_base& __base)  {    __base.unsetf(ios_base::boolalpha);    return __base;  }  /// Calls base.setf(ios_base::showbase).  inline ios_base&  showbase(ios_base& __base)  {    __base.setf(ios_base::showbase);    return __base;  }  /// Calls base.unsetf(ios_base::showbase).  inline ios_base&  noshowbase(ios_base& __base)  {    __base.unsetf(ios_base::showbase);    return __base;  }  /// Calls base.setf(ios_base::showpoint).  inline ios_base&  showpoint(ios_base& __base)  {    __base.setf(ios_base::showpoint);    return __base;  }  /// Calls base.unsetf(ios_base::showpoint).  inline ios_base&  noshowpoint(ios_base& __base)  {    __base.unsetf(ios_base::showpoint);    return __base;  }  /// Calls base.setf(ios_base::showpos).  inline ios_base&  showpos(ios_base& __base)  {    __base.setf(ios_base::showpos);    return __base;  }  /// Calls base.unsetf(ios_base::showpos).  inline ios_base&  noshowpos(ios_base& __base)  {    __base.unsetf(ios_base::showpos);    return __base;  }  /// Calls base.setf(ios_base::skipws).  inline ios_base&  skipws(ios_base& __base)  {    __base.setf(ios_base::skipws);    return __base;  }  /// Calls base.unsetf(ios_base::skipws).  inline ios_base&  noskipws(ios_base& __base)  {    __base.unsetf(ios_base::skipws);    return __base;  }  /// Calls base.setf(ios_base::uppercase).  inline ios_base&  uppercase(ios_base& __base)  {    __base.setf(ios_base::uppercase);    return __base;  }  /// Calls base.unsetf(ios_base::uppercase).  inline ios_base&  nouppercase(ios_base& __base)  {    __base.unsetf(ios_base::uppercase);    return __base;  }  /// Calls base.setf(ios_base::unitbuf).  inline ios_base&  unitbuf(ios_base& __base)  {     __base.setf(ios_base::unitbuf);     return __base;  }  /// Calls base.unsetf(ios_base::unitbuf).  inline ios_base&  nounitbuf(ios_base& __base)  {     __base.unsetf(ios_base::unitbuf);     return __base;  }  // [27.4.5.2] adjustfield anipulators  /// Calls base.setf(ios_base::internal, ios_base::adjustfield).  inline ios_base&  internal(ios_base& __base)  {     __base.setf(ios_base::internal, ios_base::adjustfield);     return __base;  }  /// Calls base.setf(ios_base::left, ios_base::adjustfield).  inline ios_base&  left(ios_base& __base)  {    __base.setf(ios_base::left, ios_base::adjustfield);    return __base;  }  /// Calls base.setf(ios_base::right, ios_base::adjustfield).  inline ios_base&  right(ios_base& __base)  {    __base.setf(ios_base::right, ios_base::adjustfield);    return __base;  }  // [27.4.5.3] basefield anipulators  /// Calls base.setf(ios_base::dec, ios_base::basefield).  inline ios_base&  dec(ios_base& __base)  {    __base.setf(ios_base::dec, ios_base::basefield);    return __base;  }  /// Calls base.setf(ios_base::hex, ios_base::basefield).  inline ios_base&  hex(ios_base& __base)  {    __base.setf(ios_base::hex, ios_base::basefield);    return __base;  }  /// Calls base.setf(ios_base::oct, ios_base::basefield).  inline ios_base&  oct(ios_base& __base)  {    __base.setf(ios_base::oct, ios_base::basefield);    return __base;  }  // [27.4.5.4] floatfield anipulators  /// Calls base.setf(ios_base::fixed, ios_base::floatfield).  inline ios_base&  fixed(ios_base& __base)  {    __base.setf(ios_base::fixed, ios_base::floatfield);    return __base;  }  /// Calls base.setf(ios_base::scientific, ios_base::floatfield).  inline ios_base&  scientific(ios_base& __base)  {    __base.setf(ios_base::scientific, ios_base::floatfield);    return __base;  }} // namespace std#endif /* _IOS_BASE_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -