近づいていると思いますが、このエラーが発生しています。何時間も壁に頭をぶつけていました。ばかげた何かが欠けていて、文字ごとに行ったのですが、見つかりません。
コンパイラは私に与えています
main.cpp:16: undefined reference to `translator::translator(std::istream&)'
collect2: error: ld returned 1 exit status
プログラムをコンパイルしようとすると。コンパイルに使用しているコマンドは次のとおりです。
clear && g++ -g -Wall main.cpp -o Pear
利用シーンは以下の3つです。
main.cpp
int main(int argc, char* argv[])
{
std::ifstream myFile;
myFile.open(argv[1]);
translator example(myFile);
myFile.close();
return 0;
}
翻訳者.cpp
#include <fstream>
#include <iostream>
#include <string>
#include "translator.h"
translator::translator(std::istream& in)
{
table1(in);
table2(in);
}
翻訳者.h
#ifndef TRANSLATOR
#define TRANSLATOR
#include <fstream>
#include <iostream>
#include <string>
#include "translationTable.h"
class translator
{
private:
translationTable<std::string, int> table1;
translationTable<int, std::string> table2;
translator();
public:
translator(std::istream& in);
};
#endif
何か案は?私は多くのことを試し、同様の問題を調べましたが、それらはすべて異なるソースを持っています. 前もって感謝します!