c++ - std::fstream 文件句柄重用问题
问题描述
我不确定这段代码有什么问题:
fstream file_h("h_input.txt");
if(file_h.is_open()){
while(!file_h.eof()){
line.clear();
getline(file_h, line);
v_hrml.push_back(line);
}
file_h.close();
file_h.clear();
}
file_h("q_input.txt");
if(file_h.is_open()){
while(!file_h.eof()){
line.clear();
getline(file_h, line);
v_queries.push_back(line);
}
file_h.close();
file_h.clear();
}
对于打开q_input.txt
reusing的代码段file_h
,编译器会产生如下错误:
error: no match for call to ‘(std::fstream {aka std::basic_fstream<char>}) (const char [12])’
file_h("q_input.txt");
欣赏你的想法。
TIA
解决方案
您正在尝试调用一个变量。
改变
file_h("q_input.txt");
至
file_h.open("q_input.txt");
推荐阅读
- angular - 在 ngx-datatable 中显示带有列名的图标
- android - 带有重叠文本的圆形图像视图(可点击)
- html - DIV 位置因内容长度而异
- ios - Xcode 10 中没有用于开发/临时/企业的导出选项
- php - 无法使用php保存数据
- javascript - Vue.js - 观察数据变化
- java - 如何在自定义 android 对话框中设置按钮?
- node.js - 需要从 YouTube 上传视频并自动嵌入到我的网络应用中
- android - 在从本机模块调用解决承诺之前,更新状态和进度以响应本机
- sql-server - 显示带有超链接 SQL Server 的表