【发布时间】:2021-06-01 23:29:06
【问题描述】:
auto MyName = "Luffy";
for (auto &student: students)
{
if (student.name == MyName)
{
m_student_info = &student;
}
}
students 是一个结构,其名称和卷号在某处声明并带有值。如何在构造函数中改进这段代码? return 不能在构造函数内部使用。即使 student.name 找到匹配项,它仍然会继续循环运行,如何避免这种情况?
【问题讨论】:
-
"return 不能在构造函数中使用" - 是这样吗?你试过
return;吗? -
break;在if中怎么样?如果你想在循环后继续函数。 -
你不能返回一个值,但你当然可以从构造函数返回。
-
是的,我试过了。构造函数不期望返回值。我只需要将值初始化/分配给 m_student_info。
-
@Luffy555 - 不,不返回值。只需返回,就像从 void 函数中一样
标签: c++ c++11 constructor