C++ C++;试图使用向量

C++ C++;试图使用向量,c++,object,vector,structure,C++,Object,Vector,Structure,我需要用一个向量来表示一个胶片对象。向我抛出错误,不确定东西需要移动到哪里,或者我是否命名错误。可能是显而易见的事情 代码: #包括“std_lib_facilities.h” int main() { 班级电影 { 公众: 胶片(); 胶片(串sl、串el); }; cout>启动电影; cout>结束电影; 日期; 字符串名; name=“films.txt”; ifstream ist(name.c_str()); 如果(!ist) 错误(“无法打开输出文件”+名称); vector t

我需要用一个向量来表示一个胶片对象。向我抛出错误,不确定东西需要移动到哪里,或者我是否命名错误。可能是显而易见的事情

代码:

#包括“std_lib_facilities.h”
int main()
{ 
班级电影
{
公众:
胶片();
胶片(串sl、串el);
};
cout>启动电影;
cout>结束电影;
日期;
字符串名;
name=“films.txt”;
ifstream ist(name.c_str());
如果(!ist)
错误(“无法打开输出文件”+名称);
vector temps;//创建一个向量来存储读数
弦乐片;
字符串控制器;
浮动评级;
国际年;
国际日期;
同时(ist>>电影>>导演>>评级>>年份>>日期)
{//read
//检查
临时向后推(电影(电影、导演、评级、年份、日期));//商店
}

不能“把错误扔给我”-那么你的第一步应该是把它们扔给我们,这样我们就不必调用我们的心理调试技能。你的代码充满了错误…以
cin>>开始电影为例;
没有错误检查,它会在遇到第一个空格时停止解析;虽然许多伟大的电影都有一个单词标题,但这是一个触摸限制。您应该使用
if(getline(std::cin,start\u film))…好的…;否则…错误信息…;
等。您列出的Film类缺少尾随“;”,没有为您在while循环中调用它的参数数提供构造函数等…请输入真实代码和真实错误输出!尝试读取错误并找出问题。它们上面有行号,所以不太难错误非常接近于简单的英语,通常会准确地告诉您需要做什么来修复它们。
#include "std_lib_facilities.h"

int main() 
{ 

    class Film 
    {
    public:
        Film();
        Film(string sl, string el);

    };

    cout << "Please enter first film:\n";
    string start_film;
    cin >> start_film;
    cout << "\nPlease enter a second film:\n";
    string end_film;
    cin >> end_film;
    cout << "\nPlease enter a date (format = dd/mm/yyyy):\n";
    string date;
    cin >> date;

    string name;
    name = "films.txt";
    ifstream ist(name.c_str());

    if (!ist)
        error("Cannot open output file " + name);

    vector<Film> temps; // create a vector to store the readings
    string film;
    string director;
    float rating;
    int year;
    int date;

    while (ist >> film >> director >> rating >> year >> date) 
    { // read
        // check
        temps.push_back(Film(film,director, rating, year, date)); // store
    }

    cout << "Start: " + start_film + " End: " + end_filmn + " Date: " + date + "\n";

    keep_window_open();
    return 0;
}