跳到主要内容

recursive_compile_time_constant

编译时常量表达式依赖于自身。

描述

#

当编译时常量的值直接或间接地以自身定义时,分析器会产生此诊断,从而创建无限循环。

示例

#

以下代码会产生两次此诊断,因为这两个常量都是根据另一个常量定义的

dart
const secondsPerHour = minutesPerHour * 60;
const minutesPerHour = secondsPerHour / 60;

常见修复方法

#

通过寻找替代方法来定义至少一个常量,从而打破循环

dart
const secondsPerHour = minutesPerHour * 60;
const minutesPerHour = 60;