2011-07-12 9 views
12

私はこれが愚かな質問であることを知っています。私はC#で次のような空のクラスを作成することができます。F#で空のクラスを作成する方法

class Customer{} 

しかし、どうすればF#でこれを行うことができますか?これは私の試みです

type Customer() = 

    let _ =() 

正しい方法は何ですか?

答えて

18

type Customer() = class end 

通常を試してみてください、あなたは暗黙のclassendトークンを残すことができますし、コンパイラは、クラスの定義の開始時と終了時に自分の存在を推測するが、クラスが完全に空である場合は、必要がありますそれらを指定する。同様に、struct endinterface endを使用して構造体とインタフェースを生成することもできます。

+0

私は 型顧客=クラスの終了を試し、 "()" なしには、私のために動作します。 –

+2

@Fred - はい、それも動作しますが、あなたのクラスはF#内でアクセス可能なコンストラクタを持ちません。 – kvb

+0

あなたは正しいです、そこに "()"を持っている必要があります、ILがどのように動作するか見てみる必要があります:)。 –

7

(パラメータなしのコンストラクタを持つ)空のクラスを書くための別の方法として、私は結果のILは、全く異なる場合@のKVBのソリューションに比べてどのように見えるかわからないが、単にしかし

type Customer() = do() 
7

です別の方法:

type Customer = 
    new() = {} 
関連する問題