-1
typedef struct
{
string idArtigo;
string tituloArtigo;
string veiculoPublicacao;
vector<string> autores;
}Publicacao;
我有这样的载体:在C++使用多重映射和struct
vector<Publicacao> pub(1000);
和:
multimap<int,Publicacao> multimapa;
multimap<int,Publicacao>::iterator it;
im使用插入物添加:
multimapa.insert (pair<int,Publicacao>(i,p[i]));
multimapa.insert (pair<int,Publicacao>(i,p[j]));
的问题是,当IM打印时,我不能打印结构的矢量自动装置,只是另一个变量s,如:
for (it=multimapa.begin(); it!=multimapa.end(); ++it)
{
arquivoResultado<<"Codigo Unico: "<< (*it).first<<endl; //works
arquivoResultado<<"Titulo: "<<(*it).second.tituloArtigo<<endl; //works
arquivoResultado<<"Autores: "<<endl; // works
for(i=0; (*it).second.autores.size(); i++) // NOT WORKS
{
arquivoResultado<<(*it).second.autores[i]<<" "; //FAIL EXECUTION
}
arquivoResultado <<"\nVeiculo: "<<(*it).second.veiculoPublicacao<<endl;
}
只是结构的向量有执行时间的问题,我不知道为什么。
难道你错过了一些语法吗?就像'我<(* it).second.autores.size();' –
甚至没有arquivoResultado <<(* it).second.autores [0];工作,就像有些事情是错误的,不能接触这个项目,或者我真的错过了正确的语法。 –
你能提供一个[MCVE]吗? –