我在实现c ++功能时遇到了麻烦,需要你的帮助。让我试着解释一下我的功能目标。我有两个矢量矢量键和矢量>值作为我的类的私有变量。首先,我试图用键的值填充向量键。接下来,我尝试使用特定键的值列表填充矢量值。在包含我的键向量中的键的索引中,相同的索引将在与值向量中的键相关联的列表中携带一组int值。 例如 插入(2,4) 插入(2,6) 现在我的键向量的第一个索引将包含2,我的值向量的第一个索引将有一个包含4和6的列表。这是我提出的我不断得到分段错误。你能帮我实现这个目标吗,特别是如何存储价值观。这是插入函数的代码。
Class A1
{
public:
{
for (unsigned int i=0;i<keys.size();i++)
{
if (keys.at(i)==key)
{
return;
}
}
keys.push_back(key);
/* for (unsigned int i=0;i<keys.size();i++)
{
if(keys[i]==key)
{
values[i].push_back(value);
}
}*/
}
private:
vector<int>keys;
vector<list<int>> values;
}
我使用/ * * /注释掉的代码是给我错误的部分。