2017-05-30 3 views
1

Diese Frage ist ein wenig seltsam, aber ich bin nicht in der Lage, die Antwort dafür zu finden. Ich habe eine einfache FunktionF # wie man die Funktion mit Console.Readline() verhindert wird ausgeführt

let answer = 
printf "give k or n" 
let ret = Console.ReadLine() 
if ret = "k" then true 
else false 

Jetzt jedes Mal wenn ich das Projekt erstellen und ausführen .exe diese Funktion zunächst lief wird dann das Material in main. Ich möchte es nur ausführen, wenn es angerufen wird. Wie kann ich das erreichen?

Antwort

5

definieren answer als Funktion:

let answer() = 
    printf "give k or n" 
    let ret = Console.ReadLine() 
    ret = "k" 
+0

Superb! Vielen Dank. Der Grund, warum es ausgewählt wird, ist nur, dass andere Funktionen Parameter haben, aber das nicht? – Kamsiinov

+4

@Kamsiinov: In F # müssen Funktionen per Definition mindestens einen Parameter haben. Wenn keine Parameter vorhanden sind, handelt es sich nicht um eine Funktion, sondern um einen Wert. – ildjarn

Verwandte Themen