这是我的代码:
Composer& Database::GetComposer (string in_last_name)
{
for (int i = 0; i < next_slot_; i++)
{
if (composers_[i].last_name() == in_last_name)
return composers_[i];
}
}
Run Code Online (Sandbox Code Playgroud)
我们的想法是遍历一个Composer对象数组,并返回对last_name字段与"in_last_name"匹配的对象的引用.我理解警告告诉我的是,该函数可能不会返回任何内容(例如,如果用户提供了无效的姓氏).我的问题是,我该如何避免这种情况?我尝试在for循环后添加"return 0"和"return NULL",它不会编译.如果找不到任何内容,此方法是否应抛出异常?