本小节简要介绍4个类模板。前面已经使用过这4个类模板,但并没有对它们的全部功能和全部成员函数进行透彻的讲解和说明。
1.类模板Basic_filebuf
类模板Basic_filebuf是从类Basic_streambuf派生而来,属于名称空间std内。此类包含了5个类型声明:
此类模板还包含了一个构造函数和一个析构函数:
此类模板的成员函数有3个:is_open()、open()和close()。其原型分别为:
此类还包括几个重载函数:showmanyc()、underflow()、uflow()、pbackfail()、overflow()、setbuf()、seekoff()、seekpos()、sync()和imbue()。
类Basic_filebuf使输入流和输出流同各自的文件关联起来。
is_open()函数用于判断文件是否被打开。如果文件打开成功,函数返回true;否则,函数返回false。
open()函数和close()实现文件或流的打开和关闭。
showmanyc()函数可以实现判断出输入流中有多少字符可以被读取。
underflow()函数在前面已经讲过。
uflow()函数从输入流中读取当前字符,并返回为整数值形式。
pbackfail()函数将字符放回输入流中。
overflow()函数前面已经讲过。
seekpos()函数使用绝对位置,随机访问文件。
seekoff()函数使用相对位置,随机访问文件。
sync()函数实现缓冲区和文件的同步。
imbue()函数默认是不做任何事情。
2.类模板Basic_ifstream
类模板Basic_ifstream是从类Basic_istream派生而来的。同样,此类模板包括5个类型声明、两个构造函数和5个成员函数。它们的声明形式及功能如下:
两个构造函数的声明形式为:(www.xing528.com)
5个成员函数的作用为:
rdbuf()函数是获取流缓冲区的指针。
is_open()函数用于判断流是否被正确打开。
open()函数用于打开文件。
close()函数用于关闭文件和输入流之间的关联。
3.类模板Basic_ofstream
类模板Basic_ofstream是从类Basic_ostream派生而来的。同样,此类模板包括5个类型声明、两个构造函数和4个成员函数。它们的声明形式及功能如下:
两个构造函数的声明形式为:
4个成员函数的作用为:
rdbuf()函数是获取流缓冲区的指针。
is_open()函数用于判断是否正确打开文件。
open()函数用于打开文件,如果打开成功,将建立文件和流之间的关联。
close()函数用于关闭流和文件之间的关联。
4.类模板Basic_fstream
类模板Basic_fstream是从类Basic_iostream派生而来的。同样,此类模板包括5个类型声明、两个构造函数和4个成员函数。它们的声明形式及功能如下:
两个构造函数的声明形式为:
4个成员函数的作用为:
rdbuf()函数用于获取流缓冲区的指针。
is_open()函数用于判断是否正确打开文件。
open()函数用于打开文件,如果打开成功,将建立该文件和流之间的关联。
close()函数用于关闭流和文件之间的关联。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。