control_flow_in_finally
在 'finally' 子句中使用 '{0}'。
描述
#当 finally
子句包含 return
、break
或 continue
语句时,分析器会生成此诊断信息。
示例
#以下代码会生成此诊断信息,因为 finally
块内包含 return
语句
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
} finally {
return 0;
}
}
常见修复方法
#如果不需要该语句,则将其删除;如果块为空,则删除 finally
子句
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
}
}
如果需要该语句,则将其移到 finally
块外部
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
}
return 0;
}