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