8

C#MFCに相当するものは何CStringですか?

4

3 に答える 3

10

おそらくSystem.String。しかし、より有用な情報を提供するために:

  • System.Stringインスタンスは不変です。Concatenation/substring/etc は実際には新しい文字列オブジェクトを作成するため、文字列インスタンスを出力を構築するためのバッファーとして使用することは、実際に行う場合に備えて、非常に悪い考えです。と考えSystem.Stringてくださいconst CString
  • System.Text.StringBuilder文字列コンテンツを構築および操作するために使用されます。.ToString()その内容を適切な文字列に変換するために呼び出すことができるメソッドがあります。
  • char[]生成された文字列の長さが正確にわかっている場合は、一種の文字列ビルダーの代替として使用できますが、デフォルトの初期容量を指定するために使用することもできますnew StringBuilder(length)。その後、インデックス変数を保持しなくても、関連する追加メソッドを使用できます。(StringBuilderあなたのためにそれをします。)

ビリーがこの質問に対する他の回答で述べたように、C# にstringは本質的に型へのショートカットであるキーワードがありSystem.Stringます。どちらも完全に同等ですが、大文字の形式を使用すると、ほとんどのコーダーはあなたをLARTします.

于 2010-11-10T06:32:37.623 に答える
2

ご存知のCStringように、OO 設計が正しく行われた輝かしい例ではありません。MS は、スイス アーミー ナイフのようになるまでメンバ関数を追加し続けましたが、重要な関数が不足していました。

CString でできることはすべて、不変の 'System.String` と多数のサポート クラスを使用すると、より適切に実行できます。

于 2010-11-10T06:36:19.697 に答える
2

Stringを使用してみて、それが役立つかどうかを確認できます。

于 2010-11-10T06:31:37.077 に答える