str*_*013 -1 c++ io templates stream
在发布此问题之前,我已经完成了我的研究,并确保没有提出类似的问题.
我正在阅读这篇文章http://www.ntu.edu.sg/home/ehchua/programming/cpp/cp10_io.html关于C++中的流,并且我在蓝色中注意到的链接图中有basic_iostream,在它下面绿色是iostream,basic_ifstream和ifstream等同样如此,
从我读到的是basic_iostream是一个模板类,iostream是basic_iostream的实例,但这是什么意思?
iostream不是像cout,cin和cerr这样的对象,那么它是如何实例化的呢?
在命名空间std中有一个typedef:
typedef basic_iostream<char, char_traits<char>> iostream;
Run Code Online (Sandbox Code Playgroud)
这定义iostream为.的同义词basic_iostream<char, char_traits<char>>.当你写的东西像
std::iostream my_stream;
Run Code Online (Sandbox Code Playgroud)
实际上,你是在写作
std::basic_iostream<char, std::char_traits<char>> my_stream.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
93 次 |
| 最近记录: |