qq_30054713
2015-08-11 05:40
采纳率: 40%
浏览 3.4k

关于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);
}

运行了就挂了 是什么问题

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 纵横车 2015-08-11 06:31
    已采纳

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

    已采纳该答案
    打赏 评论

相关推荐 更多相似问题