跳到主要內容

variable_type_mismatch

型別 '{0}' 的值不能賦給型別為 '{1}' 的 const 變數。

描述

#

分析器在常量表達式求值會導致 CastException 時會產生此診斷訊息。

示例

#

以下程式碼會產生此診斷訊息,因為 x 的值是 int 型別,不能賦給 y,因為 int 不是 String 型別。

dart
const dynamic x = 0;
const String y = x;

常見修復方法

#

如果常量宣告正確,則將要賦的值更改為正確的型別。

dart
const dynamic x = 0;
const String y = '$x';

如果賦的值正確,則更改宣告以使用正確的型別。

dart
const int x = 0;
const int y = x;