tôi không thể loại bỏ các lỗi này ... tôi có dấu chấm phẩy ở mọi nơi tôi đã kiểm tra ... mã đơn giản: lỗi sẽ đưa tôi đến định nghĩa "tên chuỗi" trong article.h ...lỗi C2146: lỗi cú pháp: thiếu ';' trước khi nhận dạng
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
Bạn đang biên dịch nó như thế nào? –
Nó biên dịch theo OSX - vì vậy chúng tôi cần thêm thông tin – Mark
Có vẻ như nó sẽ hoạt động với tôi và nó hoạt động trên GCC. 'bằng cách sử dụng không gian tên std;' trước khi bao gồm một tập tin là lý do tại sao các cuộc chiến tranh xảy ra, và bạn nên xấu hổ về bản thân ;-) Nhưng ngoài việc đó, tốt. Có thể bạn đang nhìn vào tệp nguồn sai, và có một số tệp nguồn khác bao gồm article.h mà không làm cho 'string' trở thành một kiểu hợp lệ? –