具有参数std :: ofstream&的C ++“错误:没有匹配的函数可供调用”

时间:2019-10-21 19:29:30

标签: c++

我正在研究C ++项目,并且想在与我的主要函数分开的头文件中的称为Manager的类中引用一个名为printStatus的函数。我相信它们具有相同的参数,但是我收到了错误消息:“没有匹配的函数来调用'Manager :: printStatus(std :: ofstream&)'”

Manger.h:

#ifndef MANAGER_H
#define MANAGER_H

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

class Manager{
public:
    // Constructor
    Manager(std::string filename1, std::string filename2);
    // Function of interest
    void printStatus(std::ofstream &o);
};

#endif

Driver.cpp:

#include "Manager.h"
using namespace std;

int main(in argc, char* argv[]){
    ofstream outputFileStream;

    // take in store and order files
    Manager manager(argv[1], argv[2]);

    // open output file
    outputFileStream.open("results.txt");

    // execute function of interest
    manager.printStatus(outputFileStream);

    // close output file
    outputFileStream.close();

    return EXIT_SUCCESS;
}

我还没有该类的函数定义,但是我只是想让这段代码进行编译。我正在Driver.cpp和Manager.h中的Manager :: printStatus中输入一个ofstream参数,我已声明printStatus接受一个ofstream参数。我不明白这个问题。

编译器:

Driver.cpp: In function 'int main(int, char**)':
Driver.cpp:14:38: error: no matching function for call to 'Manager::printStatus(std::ofstream&)'
  manager.printStatus(outputFileStream);
                                      ^

Manager.h:

0 个答案:

没有答案