http://blogs.msdn.com/b/mcsuksoldev/archive/2011/06/05/f-class-library-template.aspx
евожу класс C #, который оборачивает неуправляемую библиотеку, в F #. Я столкнулся с кажущейся простой проблемой переписывания следующего деструктора.
class Wrapper {
// P/Invoke ellided
private SomeType x;
public Wrapper() {
x = new SomeType();
Begin();
}
public ~Wrapper() {
End();
}
Упрощенный код F #, который я имею на данный момент, выглядит следующим образом:
type Wrapper() =
[<Literal>]
static let wrappedDll = "Library.dll"
[<DllImport(wrappedDll , EntryPoint = "Begin")>]
static extern void Begin()
[<DllImport(wrappedDll , EntryPoint = "End")>]
static extern void End()
let x = new SomeType()
do
Begin()
Как я могу изменить этот код F #, чтобы иметь такое же поведение? Мой поиск F # деструктора не дал результатов ни в моих книгах, ни в Интернете.
Спасибо.