編譯器在函數vecListAtt connFrFile(int file_ext);
中拋出一個錯誤,我不知道爲什麼。錯誤說在類體外定義類方法時出錯
「錯誤:聲明是不兼容 」vecListAtt neighborAtt :: connFrFile(INT file_ext)「(在connectivity.h申報)」
connectivity.h:
#if !def connectivity_H
#define connectivity_H
#include <iostream>
#include <vector>
#include <list>
#include <string>
#include <sstream>
#include <fstream>
class listAtt;
class vecListAtt;
class neighborAtt
{
public:
neighborAtt(); //default constructor
neighborAtt(int neighbor_id, int att_1, int att_2);
vecListAtt connFrFile(int file_ext);
vecListAtt makeList(std::vector<std::list<neighborAtt>> nodeAndInfo, int nodeID, neighborAtt neighAndAtt);
neighborAtt getAtt(std::string currentLine);
private:
int neighborID;
int attribute1;
int attribute2;
};
typedef std::list<neighborAtt> listAtt;
typedef std::vector<listAtt> vecListAtt;
#endif
在連接的.cpp,我定義
vecListAtt neighborAtt::connFrFile(int file_ext)
{
vecListAtt node_and_info;
return node_and_info;
}