程序以退出代码10结束

时间:2016-10-03 11:07:20

标签: c++

我是C ++的初学者。我正在尝试实现复制构造函数。 我希望我遵循了复制构造函数的正确语法。 但每当我编译我的代码时,它都会完成而没有任何错误,但在运行时它会说“程序完成退出代码10”。 我在Clion IDE工作。当我在Mac终端上尝试时显示“总线错误:10”

我可以发现复制构造函数导致了这个问题。 我试着通过评论和运行程序,它运行正常,当我取消注释它时会引起上述问题。

请帮我弄清楚我哪里出错了。

谢谢。

这是我的代码:

protected void GridViewLehrling_RowDataBound(object sender, GridViewRowEventArgs e)
{
    DropDownList DropDownListDienstleistungBackEnd = (DropDownList)GridViewLehrling.Rows[GridViewLehrling.SelectedIndex].FindControl("DropDownListDienstleistung");
    HiddenField HiddenFieldGutscheinartIDBackEnd = (HiddenField)GridViewLehrling.Rows[GridViewLehrling.EditIndex].FindControl("HiddenFieldGutscheinartID");
}

2 个答案:

答案 0 :(得分:0)

你是分配吗? Person ::Person(const Person &p) { strcpy(name, p.name); age = p.age; }
在将数据复制到成员之前,您应该为成员name分配大小为strlen(p.name)+1字节的内存。

答案 1 :(得分:0)

如果我仅从问题的标题回答您的问题,答案将非常简单。

  

但是首先,请先阅读How to create a Minimal, Reproducible Example,因为它有助于其他人了解检查胺您的代码。

exit()是终止内置函数,用于正常终止程序。

,它需要一个称为Status code的参数。表示两个简单状态。

  1. 如果它是0或EXIT_SUCCESSmacro),则表示成功exit(0)exit(EXIT_SUCCESS)
  2. 如果是EXIT_FAILURE,则表示失败exit(1)exit(EXIT_FAILURE)

因此对于exit(10)exit(1)的任何其他值,它指示错误。

要了解有关exit()的更多信息,请参见此处:

  

现在从您的代码中可以看到您是 pointers 的新用户,因此   这对您阅读这篇文章很有帮助,因为它可以   您如何正确使用指针以防止out of memorymemory leaksSegfault错误的指导原则。

     

C++ Core Guidelines: Rules to Resource Management