C での静的クラスの作成
C は、C# のような静的クラスをネイティブにサポートしていません。C# では、クラスが静的としてマークされると、クラスが静的としてマークされることがあります。インスタンス化。ただし、すべての静的メソッドを含むクラスを作成することによって、同様の効果を達成することは可能です。
実装
すべての静的メソッドを含む C クラスを作成するには:
例
次の BitParser クラスを考えてみましょう:
<code class="cpp">// BitParser.h class BitParser { public: static bool getBitAt(int buffer, int bitIndex); };</code>
<code class="cpp">// BitParser.cpp bool BitParser::getBitAt(int buffer, int bitIndex) { // Code to determine if the bit is set }</code>
使用法
このクラスを使用すると、インスタンスを作成せずに静的メソッドにアクセスできます:
<code class="cpp">cout << "bit 5 is " << BitParser::getBitAt(buffer, 5) << endl;</code>
注:
このアプローチは、次のことを保証することにより、静的クラスを効果的にエミュレートします。クラスのインスタンスは作成できず、そのすべての機能には静的メソッドを通じてアクセスできます。
以上がC で静的クラスのような動作を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。