关于vector嵌套使用的问题

class person
{
public:
CString name;
std::vector vecfriends;

};
std::vector vecperson;
我想给person中的friends元素逐个赋值 然后显示
是这样写的
int i = -1;
void CSocial_testDlg::OnAdd()
{
UpdateData(TRUE);
person A;
A.name = m_name;
MessageBox("已添加");
m_name = "";
vecperson.push_back(A);
i++;
UpdateData(FALSE);
}

void CSocial_testDlg::OnButton3()
{
UpdateData(TRUE);
int j = 0;
vecperson[i].vecfriends[j] = m_friends;
j++;
MessageBox("已添加");
m_friends = "";
UpdateData(FALSE);
}

void CSocial_testDlg::OnShow()
{
// TODO: Add your control notification handler code here
CString str;
str = "姓名:";
for (int k = 0;k < vecperson[i].vecfriends.size();k++)
{
str = str + vecperson[i].vecfriends[k] + "\n";
}
MessageBox(str);
}

运行了就挂了 是什么问题

0

1个回答

下个断点,看看在哪一步挂的。还有for()循环之前测试一下i的值是多少。

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!