Ben anlamına gelen F # (basit) matematiksel fonksiyon ekleme uygulamak istiyorum:F # Fonksiyon ilavesi
bir elemana A unsurunu haritasına tüm işlevleri, alan olmak F düşünün aşağıdaki eş denedi
: B şu şekildedir: Sonra
, benim "fonksiyonu ilave" tanımlanmalıdır Ben aşağıdaki satırları derlemek istiyorsanız bir hata alacak,
let inline (!+) (f1 : ^a -> ^b, f2 : ^a -> ^b) : ^a -> ^b =
let f (x : ^a) : ^b =
(f1 x) + (f2 x)
f
Ancak: o olduğunu,
let f1 x : float = -x // negate x
let f2 x : float = 2. * x // multiply by 2
let f3 = f1 !+ f2 //error : Expexceted `float`, got `'a -> 'b`
Ben eminim de operatörü !+
olarak işlev ek uygulamak bazı basit mantıksal hatalardan kaynaklanıyordu, ancak henüz bulamadım.
Sorum şu ki: F # içinde bir işlev eki nasıl tanımlanır?
Çok teşekkürler efendim! – Unknown6656