redirect_to_non_const_constructor
常量重定向建構函式不能重定向到非常量建構函式。
描述
#當一個標記為 const 的建構函式重定向到未標記為 const 的建構函式時,分析器會產生此診斷。
示例
#以下程式碼會產生此診斷,因為建構函式 C.a 被標記為 const,但重定向到建構函式 C.b,而 C.b 不是常量建構函式
dart
class C {
const C.a() : this.b();
C.b();
}常見解決方法
#如果該非常量建構函式可以被標記為 const,則將其標記為 const
dart
class C {
const C.a() : this.b();
const C.b();
}如果該非常量建構函式不能被標記為 const,則或者移除重定向,或者從重定向建構函式中移除 const
dart
class C {
C.a() : this.b();
C.b();
}