1. ホーム
  2. c#

[解決済み] アンダースコアを付けるか付けないか、それが問題です。

2022-04-28 19:57:33

質問

C# のプライベートフィールドにアンダースコアのプレフィックスを付けない場合、バイナリバージョンが他のフレームワーク言語によって消費される場合、問題はないのでしょうか?例えば、C#は大文字と小文字を区別するので、フィールドを "foo" と呼び、publicプロパティを "Foo" とするとうまく動作します。

この場合 任意の VB.NETのような大文字小文字を区別しない言語では、名前を大文字小文字で区別するだけではCLS準拠(またはその他の問題)の問題があるのでしょうか?

どのように解決するのですか?

を持つことになります。 いいえ の効果を発揮します。

CLSに準拠したライブラリを書くための推奨事項の1つは、大文字と小文字の違いだけで2つのpublic/protectedエンティティを持たないことです。 NOT 持つ

public void foo() {...}

そして

public void Foo() {...}

プライベートアイテムはライブラリのユーザが利用できないので、あなたが説明していることは問題ではありません。