はじめに:
C では、静的クラスは強力なクラスです。クラスのインスタンスを作成せずにアクセスできるメソッドと変数を定義できる機能です。これは、ユーティリティ関数や不変のデータ構造を作成する場合に役立ちます。
静的クラスの作成:
C には、C# のような静的クラスの明示的な概念がありません。静的メソッドを使用し、クラスのインスタンス化を防止することで、同様の効果を達成することができます。
これを行うには:
クラス内にパブリック静的メソッドを定義します:
<code class="cpp">class BitParser { public: static bool getBitAt(int buffer, int bitIndex); };</code>
すべてのコンストラクターをプライベートにするか = delete 構文を使用することにより、クラスのインスタンスの作成を禁止します:
<code class="cpp">BitParser() = delete;</code>
例:
次の BitParser クラスについて考えてみましょう:
<code class="cpp">class BitParser { public: static bool getBitAt(int buffer, int bitIndex); };</code>
<code class="cpp">bool BitParser::getBitAt(int buffer, int bitIndex) { bool isBitSet = false; // ... determine if bit is set return isBitSet; }</code>
このクラスは次のように使用できます:
<code class="cpp">cout << "bit 5 is " << BitParser::getBitAt(buffer, 5) << endl;</code>
結論:
静的メソッドを利用し、クラスのインスタンス化を禁止することで、 C で静的クラスをシミュレートできます。これにより、インスタンスを作成せずにクラスのメソッドや変数にアクセスできるため、ユーティリティ関数や不変のデータ構造を定義するのに便利です。
以上がC で静的クラスを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。