0

我有一个处理文件的类,作为带有一个参数的构造函数的一部分,我想使用fstream.

我基本上希望它做这样的事情

class someClass{
   public:
      someClass(char * FILENAME)
      {   
          fstream fileToProcess;
          fileToProcess.open(<FILENAME>, fstream::in | fstream::out | fstream::app);
      }
};

我想将文件名作为参数传递给类构造函数,然后class someClass将使用fstream.

4

2 回答 2

3

您可以按照您在问题中提出的方式进行操作。只需将给定构造函数的字符串传递给 fstream 的open()方法:

someClass(const char *filename)
{   
    fstream fileToProcess;
    fileToProcess.open(filename, ...);
}
于 2010-05-21T02:36:25.373 回答
2

您不需要宏,也不必显式调用 open。

using std::fstream;

class someClass
{
    fstream fileToProcess;
    public:
    someClass(char * filename) 
    : fileToProcess(filename, fstream::in | fstream::out | fstream::app) 
    {
    }
};
于 2010-05-21T02:40:57.470 回答