构造函数中的分段错误

时间:2012-01-19 17:22:23

标签: c++ pointers segmentation-fault

在我的TeamMatcher.C中,我有以下代码:

void TeamMatcher::makeTeamSet(){                                                                                                          
  //Segmentation fault here:                                                                                                               
    Team tempTeam(rosterExcellent[0]);
  //...more code in this method below this point, but it has all been commented out.

rosterExcellent是一个载体

以下是Team(Student member1)的构造函数:

Team::Team (Student member1)
{
  // members is a vector<Student> instance variable in Team
  // commonHrsAvailable is a vector<int> in Team


  // members.push_back(member1);                                                                                                                                  
  //commonHrsAvailable = member1.hrsAvailable;                                                                                                                   
  //numberOfCommonHrsAvailable = commonHrsAvailable.size();                                                                                                       
}

请注意所有行都已注释掉,我仍然会遇到分段错误。 这是要执行的最后一段代码。

现在,我搞乱了将成员更改为vector,将此构造函数的参数更改为Student *,将rosterExcellent更改为vector(以及将。符号更改为 - &gt;在适当的位置)。我得到它将运行构造函数的第一行(members.push_back(member1)),但它在下一行上出现故障(即使在我更改为 - &gt;表示法之后)。

1 个答案:

答案 0 :(得分:1)

rosterExcellent[0]NULL或未正确初始化。