Ada 程式設計/屬性/'Copy Sign
外觀
functionS'Copy_Sign (Value, Sign : T)returnT
S'Copy_Sign(X, Y) 是一個 Ada 屬性,其中 S 是任何浮點型別,X 和 Y 是該型別的任何例項。此屬性表示具有 X 的幅度和 Y 的符號的浮點值。
如果結果值超出 S 的基範圍,則會引發 Constraint_Error 異常。
X : Float := 1.5; Y : Float := -1.0; Z : Float := 1.0;pragmaAssert (Float'Copy_Sign ( X, Y) = -1.5); -- OKpragmaAssert (Float'Copy_Sign ( X, Z) = 1.5); -- OKpragmaAssert (Float'Copy_Sign (-X, Z) = 1.5); -- OKpragmaAssert (Float'Copy_Sign ( Y, Z) = -1.0); -- Wrong
