
c++中除了预定义的cin cout cerr等对象外,我们能否自定义istream对象和ostream对象?
2个回答
展开全部
可以。例如书上例子:
#include <iostream>
#include <fstream>
int main () {
std::filebuf fb;
if (fb.open ("test.txt",std::ios::in))
{
std::istream is(&fb); // 这个就是。istream 对象 is -- test.txt
while (is)
std::cout << char(is.get());
fb.close();
}
return 0;
}
=======
#include <iostream>
#include <fstream>
int main () {
std::filebuf fb;
fb.open ("test.txt",std::ios::out);
std::ostream os(&fb); // ostream 对象也可以,os -- test.txt
os << "Test sentence\n";
fb.close();
return 0;
}
#include <iostream>
#include <fstream>
int main () {
std::filebuf fb;
if (fb.open ("test.txt",std::ios::in))
{
std::istream is(&fb); // 这个就是。istream 对象 is -- test.txt
while (is)
std::cout << char(is.get());
fb.close();
}
return 0;
}
=======
#include <iostream>
#include <fstream>
int main () {
std::filebuf fb;
fb.open ("test.txt",std::ios::out);
std::ostream os(&fb); // ostream 对象也可以,os -- test.txt
os << "Test sentence\n";
fb.close();
return 0;
}

2024-04-12 广告
**ODU重载连接器**ODU重载连接器是一种高性能、高密度的连接解决方案,广泛应用于各种工业自动化和通信设备中。它采用先进的设计理念和制造技术,具有优异的电气性能和机械强度,能够满足复杂环境下对数据传输和信号稳定的高要求。同时,ODU重载...
点击进入详情页
本回答由上海莘默提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询