用c++写了段代码,读文件的,但是报错,在网上搜不到问题,哪位以c++高手帮忙看下,谢谢
报错信息:
error C2079: “file”使用未定义的 class“std::basic_ifstream<_Elem,_Traits>”
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
以下是代码:环境是vs2012
#include <iostream>
#include <ios>
#include <ostream>
#include <iomanip>
#include <streambuf>
#include <string>
#include <iosfwd>
#include <fstream>
#include <istream>
using namespace std;
class StuService{
public: void Input();
int Total();
double Average();
};
void StuService::Input(){
char buffer[256];
ifstream file;
file.open("d://records.txt");
if(!file){
cout<<"打开records.txt文档异常";
exit(0);
}
int a,b;
int i=0,j=0;
while(!file.eof()){
file.getline(buffer,10);
sscanf(buffer,"%d %d",&a,&b);
cout<<a<<";"<<b<<endl;
}
file.close();
};
int StuService :: Total(){
return 0;
};
double StuService::Average(){
return 0.0;
}
void main(){
StuService service ;
service.Input();
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
#include<iosfwd>
把这行去掉试试吧
像是模板没有实例化,查下 iosfwd 中 ifstream的定义,手头没2012,没法看。
你没说清楚是哪一行报的。。。
令人巨汗,vs2010下边能编译能运行虽然不知道题主想干什么…但是C和C++混合风格的写法是在太丑了…
#include<iostream>#include<fstream>#include<string>#include<sstream>...
inta,b;strings;stringstreamss;while(getline(file,s)){ss<<s;ss>>a>>b;ss.clear();cout<<a<<";"<<b<<endl;}我是初学者,