-1
我試圖創建一個名爲Paitent_info.h,你可以在這裏看到標題:爲什麼我無法將我的源文件連接到頭文件?
#ifdef GUARD_Paitent_info
#define GUARD_Paitent_info
#include <iostream>
#include <string>
#include <vector>
struct Paitent_info {
std::string name;
std::vector<double> tem;
};
bool compare(const Paitent_info&, const Paitent_info&);
std::istream& read(std::istream&, Paitent_info&);
std::istream& read_tem(std::istream&, std::vector<double>&);
#endif
這裏是Paitent_info.cpp:
#include "Paitent_info.h"
using std::istream; using std::vector;
bool compare(const Paitent_info& x, const Paitent_info& y)
{
return x.name < y.name;
}
istream& read(istream& ip, Paitent_info& p)
{ // do something
return ip;
}
istream& read_tem(istream& in, vector<double>& tem)
{ // do something
return in;
}
我從這個代碼中的許多錯誤信息:
- 的std :: istream和性病::矢量尚未聲明
- Paitent_info沒有指定類型。
- 請求構件「名稱」中的「X」和「y」,其是非類類型「const int的」的。
- 的IStream沒有指定類型。
我不知道爲什麼我得到所有這些錯誤信息,請幫助我。
順便說一句這是病人不paitent – user463035818
你包括後衛應該IFNDEF不IFDEF。 – user1937198
在標題中使用'#pragma once'而不是'#ifndef'後衛 – Nikita