我试图创建一个使用文本文件作为数据库的c ++程序。为此,它将文本文件(代表歌曲)中的行存储为" Revolution Diplo Revolution 320 12" 当该句子被分割时(另一个困境),数据值分别是名称,艺术家,专辑,千字节/秒和大小(以兆字节为单位)。
我收到以下错误:
'main():: song'使用本地类型'main():: song',
尝试实例化'template class std :: allocator',
模板参数2无效,
在'{'token
我无法弄清楚它是如何运作的。
struct song{
string name;
string artist;
string album;
string kbs;
string size;
};
//Declare our function that will search
vector<song> loadStructsInData(){ //THIS LINE IS WHERE THE ERROR ARISES
/* this part just reads a file and interprets each line as structs, like a database */
return songs;
cout<<"All done!"<<endl<<endl;
}
并且它都在main()函数中。
答案 0 :(得分:0)
您必须在全局(或类,但不是函数)范围内声明您的结构,以便在STL容器中使用它。