// <ios>
class ios_base;

ios_base 类是标准库中流相关类的整个类层次结构中的基类(Base class)。该类描述了一个流的最基本的部份,这部份对所有流对象都是通用的,且不受字符类型影响。

  • ios_base 没有公共(Public)构造函数,因此,不能够定义以该类为类型的对象。

    ios_base 及它的继承类 std::basic_ios 两者都定义了一个流的组成部分,这些组成部分不受当前流具体是输入流还是输出流影响,ios_base 中给出的成员(函数)甚至不受模板参数(如:字符类型及特征相关)影响,而 basic_ios 中的成员则依赖这些模板参数。

    更具体地说,ios_base 类维护了一个流的以下信息。

      范畴 成员函数 介绍
    格式化 格式标志 flags
    setf
    unsetf
    一系列内部标志,这些标志会影响一个特定的输入或输出操作是如何被解释执行或形成的。
    字段(Field)长度 width 下一个将要插入的被格式化元素的宽度
    显示精度 precision 下一个将要插入的浮点数值的精度
    本地化(Locale) getloc
    imbue
    std::locale 对象被用于一些函数,这些函数用于被格式化的输入或输出操作,而这些操作受本地化特性影响。
    其它 回调栈(Callback stack) register_callback 当特定事件发生时,指向将会被调用的函数的指针所组成的栈(Stack)
    可扩展的数组 iword
    pword
    xalloc
    内部数组相关。
  • event 用来指明事件类型的类型
    event_callback 事件回调函数类型
    fmtflags 用来表示流格式化标志的类型
    iostate 用来表示流状态标志的类型
    openmode 用来表示流打开方式的类型
    seekdir 用来表示流查找方向的类型
  • failure 流异常(Exception)基类
    Init 初始化标准流对象(Standard stream object)
  • (constructor) 构造对象
    (destructor) 析构对象

    格式化(Formatting)

    flags 获取或设置格式标识
    setf 设置指定的格式标识
    unsetf 清除指定的格式标识
    precision 获取或设置浮点数精度
    width 获取或设置字段宽度

    本地化(Locale)

    imbue 激活本地化特征
    getloc 获得当前本地化特征

    内部可扩展数组(Internal extensible array)

    xalloc 从可扩展数组中获得一个新的索引(Index)
    iword 从可扩展数组中获得一个整数元素
    pword 从可扩展数组中获得一个指针元素

    其它

    register_callback 注册事件回调函数(Event callback function)
    sync_with_stdio C 型输入输出同步绑定