import 'dart:math';
void main(){
const Rectangle bounds = const Rectangle(0, 0, 3, 4);
print(bounds);
}
矩形建構式沒有被動態呼叫?是的,它回傳一個常量,但它仍然沒有顯示該函式將執行、計算某些東西,然后決定一個值嗎?
uj5u.com熱心網友回復:
矩形建構式沒有被動態呼叫?是的,它回傳一個常量,但它仍然沒有顯示該函式將執行、計算某些東西,然后決定一個值嗎?
“動態”通常意味著可以更改并且在運行時完成的事情。盡管Rectangle正在呼叫建構式,但由于它是在背景關系中呼叫的,因此它會創建一個在編譯時評估的編譯const時常量。
const建構式的功能非常有限。編譯器必須能夠在編譯時評估它們,這意味著它們不能執行任意代碼。它們不能有建構式體,通常它們只是通過直接從構造引數分配成員來初始化成員(如果在const背景關系中呼叫建構式,它們還必須編譯時常量)。在某些情況下,如果引數是基本型別(例如bool、int、String等),則可以進行一些有限的操作,例如比較它們或將它們與 相加 。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/439612.html
