跳到主内容

const_with_non_const

调用的构造函数不是 const 构造函数。

描述

#

当使用关键字 const 调用未标记为 const 的构造函数时,分析器会生成此诊断信息。

示例

#

以下代码会生成此诊断信息,因为 A 中的构造函数不是 const 构造函数

dart
class A {
  A();
}

A f() => const A();

常见修复方法

#

如果希望并且可能将类设为常量类(通过将类的所有字段,包括继承的字段,设为 final),则在构造函数前添加关键字 const

dart
class A {
  const A();
}

A f() => const A();

否则,删除关键字 const

dart
class A {
  A();
}

A f() => A();