-
C#の優先キュー
優先キューには、優先値を持つ情報が保持されます。キューの拡張です。 優先度付きキューからアイテムを削除しようとすると、プロパティが最も高いアイテムが最初に削除されます。 優先キューを設定する方法を見てみましょう- public class MyPriorityQueue <T> where T : IComparable <T> { } 次に、アイテムを追加しましょう。以下の例では、アイテムは一般的なリストであるinfoに保存されます。 例 public class MyPriorityQueue <T> where T : IComparable
-
C#のプライベートメソッドとfinalメソッド
プライベートメソッド プライベートメソッドを設定するには、プライベートアクセス指定子を使用します。 プライベートアクセス指定子を使用すると、クラスはそのメンバー変数とメンバー関数を他の関数やオブジェクトから隠すことができます。同じクラスの関数のみがそのプライベートメンバーにアクセスできます。クラスのインスタンスでさえ、そのプライベートメンバーにアクセスできません。 最終的な方法 最終的な方法については、封印された修飾子を使用してください。 メソッドのC#で封印された修飾子を使用すると、メソッドはオーバーライドする機能を失います。封印されたメソッドは派生クラスの一部である必要があり、メソ
-
C#のプライベートコンストラクターとシングルトンクラス
以下に示すように、静的メンバーのみを含むクラスでプライベートコンストラクターが使用されます- class Demo { // private constructor private Demo() { } public static a = 10; } シングルトンクラスには通常のメソッドがあり、インスタンスを使用して呼び出すことができます。 クラスの複数のインスタンスを防ぐために、プライベートコンストラクターが使用されます。 例を見てみましょう- 例 public class Singleton { &nbs
-
C#の演算子関数
演算子関数は、特別な名前を持つ関数であるオーバーロードされた演算子です。これを作成するには、キーワード演算子の後に、定義されている演算子の記号が続きます。 他の関数と同様に、オーバーロードされた演算子には戻り値の型とパラメーターのリストがあります。 例- public static Box operator+ (Vehicle v1, Vehicle v2, Vehicle v3) { } 以下は、C#で演算子関数がどのように作成および使用されるかを示す完全な例です- 例 using System; namespace OperatorOvlApplication { &
-
C#の演算子、型、変数
C#の変数 変数は、プログラムが操作できるストレージ領域に付けられた名前です。 C#の各変数には特定のタイプがあり、変数のメモリのサイズとレイアウト、そのメモリ内に格納できる値の範囲、および変数に適用できる一連の操作を決定します。 C#のタイプ C#の変数は、値、参照、ポインターの種類に分類されます。 値の種類 値型変数には、値を直接割り当てることができます。これらは、クラスsystem.ValueTypeから派生しています。 参照型 参照型には、変数に格納されている実際のデータは含まれていませんが、変数への参照は含まれています。 複数の変数を使用して、参照型はメモリ位置を参照でき
-
C#コードの最適化のヒント
以下はヒントです- 優先リスト 必要に応じてリストを使用してください。同じ作業でArrayListを使用すると、コードの作業が遅くなる可能性があります。これは特に、同じリスト内に複数のタイプのオブジェクトを格納している場合に当てはまります。 乗算シフト演算を使用する 除算演算子を使用するとコードが遅くなるため、除算演算子ではなく乗算シフト演算を使用することをお勧めします。 コードの使用量が少ない 演算子を使用してコードを簡潔にし、1行で機能するようにしてください。 &&のような演算子を使用すると、すべての条件を1行で指定できます。
-
C#のプライベート変数
プライベートアクセス指定子を使用すると、クラスはそのメンバー変数とメンバー関数を他の関数やオブジェクトから隠すことができます。同じクラスの関数のみがそのプライベートメンバーにアクセスできます。クラスのインスタンスでさえ、そのプライベートメンバーにアクセスできません。 プライベート変数を作成する- private double length; 例を見てみましょう。ここで、プライベートに設定されている長さ変数にアクセスしようとすると、次のエラーが発生します。 BoxApplication.Box.length' is inaccessible due to its protection
-
C#クラスのオプションのプロパティ
プロパティは、nullを持つことが可能であり、有効である場合はオプションです。 CLRタイプがnullを持つことができないプロパティは、オプションで構成できません。 オプションの属性の使用例- 例 [AttributeUsage(AttributeTargets.Property, Inherited = false, AllowMultiple = false)] internal sealed class OptionalAttribute : Attribute { } public class Employee { public string EmpNam
-
C#でのオーバーロード
C#ではオーバーロードには2つのタイプがあります。 関数のオーバーロード 同じスコープ内の同じ関数名に対して複数の定義を持つことができます。関数の定義は、引数リスト内の引数のタイプや数によって互いに異なる必要があります。 例を見てみましょう- public static int mulDisplay(int one, int two) { } public static int mulDisplay(int one, int two, int three) { } public static int mulDisplay(int one, int two, int three, int f
-
C#のネストされたクラス
ネストされたクラスは、別の囲んでいるクラスで宣言されたクラスです。これはその包含クラスのメンバーであり、包含クラスのメンバーはネストされたクラスのメンバーにアクセスできません。 C#のネストされたクラスのサンプルコードスニペットを見てみましょう- 例 class One { public int val1; public class Two { public int val1; } } class Demo { static void Main
-
C#のミューテーションテストツール
C#でのミューテーションテストに最適なツールの1つは、「VisualMutator」です。これは、.NETプログラミング環境と統合されています。 以下は、ミューテーションテストツールであるVisualMutantの機能です- テストスイートの品質を測定します。 組み込みおよびカスタムのミューテーション演算子を使用して1次ミュータントを作成します。 変更されたコードフラグメントをC#で表示します。 生成されたミュータントに対してNUnitおよびXUnitテストを実行します。 合格および不合格のテストに関する情報を提供します 結果をXMLに書き込むこともできます。 ミューテーションテストプロセ
-
C#での命名規則
クラスの命名規則 クラス定義は、キーワードclassで始まり、その後にクラス名が続きます。中括弧で囲まれたクラス本体。クラス名の規則は次のとおりです。 パスカルケーシング クラス名のコーディング規約は、クラス名の名前です。たとえば、PascalCasingである必要があります。 public class EmployeeDetails {} 上記では、クラス名EmployeeDetailsはPascalCasingにあります。 名詞または名詞句 クラス名を名詞または名詞句として追加することをお勧めします- public class Employee {} 識別子は、クラス、変数、関
-
C#でのNull Pointer Exception
NullReferenceExceptionは、NullPointerExceptionのC#バージョンです。 C#で処理してキャッチするには、try-catchを使用します。 次の例は、変数がnullに設定されており、それを出力しようとすると、キャッチに捕まる例外をスローすることを示しています- Try { a = null; Console.WriteLine(a); }catch (NullPointerException ex) { Console.WriteLine("Variable is N
-
C#の数値
C#の数値には、int型を使用します。正または負の整数である整数を表します。 数学演算子+− を使用してC#で2つの整数を追加する方法を見てみましょう。 using System; using System.Linq; class Program { static void Main() { int x = 20; int y = 30; int sum = 0; sum = x + y; &nb
-
C#でオーバーライドする
ランタイムポリモーフィズムには、動的バインディングまたは遅延バインディングとも呼ばれるメソッドオーバーライドがあります。これは、抽象クラスと仮想関数によって実装されます。抽象クラスには、派生クラスによって実装される抽象メソッドが含まれています。 ランタイムポリモーフィズムを実装し、オーバーライドで動作する抽象クラスの例を見てみましょう- 例 using System; namespace PolymorphismApplication { abstract class Shape { public abstract int
-
C#のプライベートメソッド
プライベートメソッドは、クラス内でのみ使用できます。プライベートメソッドを設定するには、プライベートアクセス指定子を使用します。 プライベートアクセス指定子を使用すると、クラスはそのメンバー変数とメンバー関数を他の関数やオブジェクトから隠すことができます。同じクラスの関数のみがそのプライベートメンバーにアクセスできます。クラスのインスタンスでさえ、そのプライベートメンバーにアクセスできません。 以下は例です- 例 using System; class Demo { private int displayOne() {
-
C#を使用して文字列を逆にする方法は?
文字列を反転するには、Array.Reverse()メソッドを使用します。 逆にしたい文字列を設定します- string str = "Amit"; 上記の方法では、文字列を文字配列に変換しました- char[] ch = str.ToCharArray(); 次に、Reverse()メソッドが使用されます。 Array.Reverse(ch); 例 using System; namespace Demo { class Program { static void Main(string[] arg
-
C#で一時変数を使用せずに2つの数値を交換する方法
2つの数値を交換するには、3番目の変数を使用し、一時変数を使用せずに算術演算子を実行します。 スワッピング用に2つの変数を設定します- val1 = 5; val2 = 10; 次に、スワップに対して次の操作を実行します- val1 = val1 + val2; val2 = val1 - val2; val1 = val1 - val2; 例 using System; namespace Demo { class Program { static void Main(string[] args) { &
-
C#でのネットワーキング
.NET Frameworkには、ネットワークサービスの階層化された、拡張可能な、管理された実装があります。それらをアプリケーションに簡単に統合できます。 System.Netを使用します。名前空間。 Uriクラスにアクセスする方法を見てみましょう。C#では、URI(Uniform Resource Identifier)のオブジェクト表現を提供します- Uri uri = new Uri("https://www.example.com/"); WebRequest w = WebRequest.Create(uri); System.Netクラスを見てみましょう。これ
-
C#で文字列をトリミング(先頭と末尾のスペースを削除)
C#で文字列をトリミングするには、正規表現を使用します。 まず、正規表現のパターンを設定します- string pattern = "\\s+"; 次の文字列が先頭と末尾のスペースがあるとしましょう- string input = " Welcome User "; ここで正規表現を使用して、パターンを設定し、C#で新しい文字列に結果を取得します。 Regex rgx = new Regex(pattern); string result = rgx.Replace(input, replacement); 以下は完全な例です- 例 using