我无法摆脱这些错误...我检查的地方到处都是分号... 代码很简单: 错误将我带到了article.h ...
中的“字符串名称”定义的main.cpp
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
using namespace std;
#include "article.h"
int main()
{
string si;
char article[128];
vector<Article> articles;
ifstream file;
file.open("input.txt",ifstream::in);
while(!file.eof())
{
file.getline(article,128);
articles.push_back(Article(article));
}
file.close();
while(1);
return(1);
}
article.h:
#ifndef Article_H
#define Article_H
class Article
{
public:
int year;
string name;
Article(char *i_name);
};
#endif
答案 0 :(得分:12)
你应该添加:
#include <string>
到你的“article.h”头文件并声明名称,如下所示:
std::string name;
答案 1 :(得分:3)
似乎没有在article.h文件中定义string
类型。尝试添加iostream
并添加using namespace std
(或写std::string
而不是使用命名空间)
答案 2 :(得分:3)
您应该在标头中使用std :: namespace前缀,例如
std::string name;