c++文件读写报错class“std::basic_ifstream

lilitaoa 发布于 2013/12/15 21:41
阅读 2K+
收藏 0

用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();

}



加载中
0
stxy0509
stxy0509

#include <iosfwd>

把这行去掉试试吧

0
Danath
Danath

像是模板没有实例化,查下iosfwdifstream 的定义,手头没2012,没法看。

你没说清楚是哪一行报的。。。

0
左笔一支
令人巨汗,vs2010下边能编译能运行
0
TerranYiu
TerranYiu

虽然不知道题主想干什么…但是C和C++混合风格的写法是在太丑了…

#include <iostream>
#include <fstream>
#include <string>
#include <sstream>


...

    int a, b;
    string s;
    stringstream ss;
    while (getline(file,s)) {   
        ss << s;
        ss >> a >> b;
        ss.clear();
        cout << a << ";" << b << endl;
    }
0
lilitaoa
lilitaoa
我是初学者,
返回顶部
顶部