• 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;
  • 相关阅读:
    ASP.NET MVC 扩展相关
    新.NET开发十大必备工具
    c#调用存储过程两种方法
    TweakUI取消pc喇叭声
    baidu mp3竟然还加密,太扯了
    NTLM在使用代理服务器的情况下,第三次握手可能出错
    httpclient解析gzip网页
    eclipse不能自动编译工程的解决方法
    bat设置环境变量
    java的ZipOutputStream压缩文件的两个问题(乱码和每次zip后文件md5变化)
  • 原文地址:https://www.cnblogs.com/lgxZJ/p/6427357.html
Copyright © 2020-2023  润新知