私はC#が初めてなので、この問題について無知であることをお許しください。
C++ では、関数 (クラスにないメソッド) を定義できます。
C# でも同じことができますか。ラムダ関数や無名関数のことではありません。C++ と同じ方法を参照しています。
元。
public void f() { }
-- クラスではありません。
また、これは私の 2 番目の質問につながります。C# で定義できる唯一の最上位項目は何ですか。
ありがとう :-)
私はC#が初めてなので、この問題について無知であることをお許しください。
C++ では、関数 (クラスにないメソッド) を定義できます。
C# でも同じことができますか。ラムダ関数や無名関数のことではありません。C++ と同じ方法を参照しています。
元。
public void f() { }
-- クラスではありません。
また、これは私の 2 番目の質問につながります。C# で定義できる唯一の最上位項目は何ですか。
ありがとう :-)
答え 1:
C# では、メソッドはクラス/構造体で囲む必要があります。これは基本的にカプセル化の概念です。
これらのデータを操作するデータと関数を 1 つのエンティティにバインドします。
答え 2:
struct、enum、Interface、Delegate、およびその他のトップレベル項目を定義できます。
あなたの最初の質問への答えは NO で、その理由はおそらくここにあるでしょう: Why Does C# Implement "Top Level" Methods?
それが役に立てば幸い。
いいえ、クラス内にない関数を持つことはできません。C# では、すべての関数がクラス (メソッドなど) にある必要があります。ただし、オブジェクトのインスタンスをインスタンス化せずに呼び出すことができる関数である静的関数を使用できます。
struct
、、、および-はclass
、C# の最上位項目です。enum
delegate
interface
詳細については、 C# 言語仕様を参照してください。