是否有任何語言可以聲明global
斷言 - 這是在整個程序執行過程中應該保持的斷言。因此,這將是可能寫出類似:`全局`斷言?
global assert (-10 < speed < 10);
和這一說法將被檢查每次speed
變化狀態?
是否有任何語言可以聲明global
斷言 - 這是在整個程序執行過程中應該保持的斷言。因此,這將是可能寫出類似:`全局`斷言?
global assert (-10 < speed < 10);
和這一說法將被檢查每次speed
變化狀態?
我不知道任何語言,真的做這樣的事情,我會懷疑,有任何語言,因爲它是很難實現的東西,同時不是很多的東西人們需要。
簡單地斷言輸入是有效的,修改只能在允許的情況下進行,並且採用定義的,理智的方式。這就結束了「全球斷言」的需要。
你可以得到這樣的效果「通過後門」在幾個方面,但沒有一個真正優雅,另外兩個是相當依賴於系統的:
艾菲爾支持所有不同的契約:先決條件,後置條件,不變......你可能想要使用它。
另一方面,爲什麼你有一個全局變量?你爲什麼不創建一個修改速度的類。這樣做,每當價值發生變化時,您都可以輕鬆檢查您的狀況。