F # - Namespaces

EIN namespacewurde entwickelt, um eine Möglichkeit zu bieten, einen Satz von Namen von einem anderen zu trennen. Die in einem Namespace deklarierten Klassennamen stehen nicht in Konflikt mit denselben in einem anderen deklarierten Klassennamen.

Gemäß der MSDN-Bibliothek a namespace Mit dieser Option können Sie Code in Bereiche verwandter Funktionen organisieren, indem Sie einer Gruppe von Programmelementen einen Namen hinzufügen.

Namespace deklarieren

Um Ihren Code in einem Namespace zu organisieren, müssen Sie den Namespace als erste Deklaration in der Datei deklarieren. Der Inhalt der gesamten Datei wird dann Teil des Namespace.

namespace [parent-namespaces.]identifier

Das folgende Beispiel veranschaulicht das Konzept -

Beispiel

namespace testing

module testmodule1 =
   let testFunction x y =
      printfn "Values from Module1: %A %A" x y
module testmodule2 =
   let testFunction x y =
      printfn "Values from Module2: %A %A" x y

module usermodule =
   do
      testmodule1.testFunction ( "one", "two", "three" ) 150
      testmodule2.testFunction (seq { for i in 1 .. 10 do yield i * i }) 200

Wenn Sie das Programm kompilieren und ausführen, wird die folgende Ausgabe ausgegeben:

Values from Module1: ("one", "two", "three") 150
Values from Module2: seq [1; 4; 9; 16; ...] 200