我尝试编译我的代码,我很确定我在我的标题或编译中犯了一个错误,但我不明白在哪里。我知道这是一个基本问题,我读了一些其他话题,但我真的不明白。我看了一些我写的其他代码,但我没有看到任何差别...
g++ -c main.cpp -o out
我不明白错误,所以我也试试:
g++ -c readFastqFile.cpp
错误
readFastqFile.cpp:8:1: error: ‘readFastq’ does not name a type
readFastq::readFastq(){ //Constructor
我的档案是:
的main.cpp
#include <iostream>
#include <string>
#include "readFastqFile.hpp"
using namespace std;
int main(int argc, char *argv[]){
cout << "hello" <<endl;
//readFastq allReads;
return 0;
}
readFastqFile.hpp
#ifdef READFASTQFILE_HPP
#define READFASTQFILE_HPP
#include <iostream>
#include <string>
using namespace std;
class readFastq{
public:
readFastq(); //constructor
private:
string readName;
string sequence;
string score;
};
#endif // READFASTQFILE_HPP
readFastqFile.cpp
#include <string>
#include <iostream>
#include "readFastqFile.hpp"
using namespace std;
readFastq::readFastq(){ //Constructor
readName = "bla";
cout << readName <<endl;
}
由于
答案 0 :(得分:4)
#ifdef READFASTQFILE_HPP
应为#ifndef READFASTQFILE_HPP
。 #ifdef
导致readFastqFile.hpp的内容被忽略,因此没有编译类定义。