Fstream声明

时间:2011-06-14 09:17:47

标签: c++ fstream

我需要能够使用不同的文件多次使用一个函数。我有这段代码:

fstream in(inf, ios::in);

其中inf是一个扩展名为.mpp的字符串,但不起作用(声明) 你能帮我么? :)

3 个答案:

答案 0 :(得分:3)

你可能想要:

 fstream in(inf.c_str(), ios::in);

更好的是,使用ifstream:

string mpp = "foobar.mpp";
ifstream in( mpp.c_str() );

我不明白为什么当人们只想执行输入或输出时,人们不会使用专门的输入和输出流。

答案 1 :(得分:0)

正如我可能推断出你的“不起作用”的回答,也许你必须:

a)包括fstream标题。

b)std::使用fstream前缀(或ifstream

#include <fstream>
// ...
std::ifstream in (inf.c_str());

(请注意,如果您使用ifstream,则无需指定ios::in

答案 2 :(得分:-1)

毫米。

也许尝试将此函数包装在某个文件处理程序对象中。然后只需在工作文件中包含文件处理程序头,并尽可能多地使用它。