zoukankan      html  css  js  c++  java
  • C++ 头文件系列(fstream)

    1. 简介

    该头文定义了与文件箱关联的流类的4个模版:

    • basic_filebuf
    • basic_ifstream
    • basic_ofstream
    • basic_fstream

    和8个类型:

    • filebuf
    • ifstream
    • ofstream
    • fstream
    • wfilebuf
    • wifstream
    • wofstream
    • wfstream

    2. basic_filebuf模版

    该模版继承自basic_streambuf,同时将输入流与输出流与文件相关联,它的作用与basic_stringbuf是相似的。 因为继承自可重用的基类,它自身只定义了有限的公有函数虚函数(虚函数不再赘述)。

    2.1 公有函数

    • open : 打开文件并关联。
    • close : 关闭文件并取消关联。
    • is_open : 检测先前是否顺利打开了文件。
    • operator =(移动语义) : 移动语义的赋值运算符。
    • swap : 交换两个对象内容。

    2.2 全局模版函数

    • swap : 基本上每个标准类都回提供swap的两种形式:成员函数 和 全局模版。

    3. 基于文件的流类模版

    1. basic_ifstream内部使用bsaic_filebuf来控制刘序列,它继承自basic_istream
    2. basic_ofstream内部使用bsaic_filebuf来控制刘序列,它继承自basic_ostream
    3. basic_fstream内部使用bsaic_filebuf来控制刘序列,它继承自basic_iostream

    同样是由于继承可重用基类的缘故,这些类模版本身也只定义了几个公有函数。

    3.1 公有函数

    • open : 打开文件并关联。
    • close : 关闭文件并取消关联。
    • is_open : 检测先前是否顺利打开了文件。
    • rdbuf : 返回内部的basic_stringbuf对象指针。
    • operator = (移动语义)
    • swap

    3.2 全局模版函数

    • swap

    4 typedefs

    • typedef basic_ifstream< char > ifstream;
    • typedef basic_ofstream< char > ofstream;
    • typedef basic_fstream< char > fstream;
    • typedef basic_filebuf< char > filebuf;
    • typedef basic_ifstream< wchar_t > wifstream;
    • typedef basic_ofstream< wchar_t > wofstream;
    • typedef basic_fstream< wchar_t > wfstream;
    • typedef basic_filebuf< wchar_t > wfilebuf;
  • 相关阅读:
    error: <item> inner element must either be a resource reference or empty.
    PEM routines:PEM_read_bio:no start line
    Android Https双向认证 + GRPC
    git tag用法
    Linux文件查找
    Detected problems with API compatibility(visit g.co/dev/appcompat for more info)
    Android NDK开发调试
    Beyond-Compare 4 -linux 破解
    Ubuntu下Gradle环境配置
    多线程系列一
  • 原文地址:https://www.cnblogs.com/lgxZJ/p/6427357.html
Copyright © 2011-2022 走看看