C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

メンバー関数の静的変数はC++でどのように機能しますか?


メンバー関数の静的変数は、キーワードstaticを使用して宣言されます。静的変数用のスペースは1回だけ割り当てられ、これはプログラム全体で使用されます。また、プログラム全体でこれらの静的変数のコピーは1つだけです。

C++のメンバー関数の静的変数を示すプログラムは次のとおりです。

#include <iostream>
using namespace std;
class Base {
   public :
   int func() {
      static int a;
      static int b = 12;
      cout << "The default value of static variable a is: " << a;
      cout << "\nThe value of static variable b is: " << b;
   }
};
int main() {
   Base b;
   b.func();
   return 0;
}

出力

上記のプログラムの出力は次のとおりです。

The default value of static variable a is: 0
The value of static variable b is: 12

上記のプログラムを理解しましょう。

Baseクラスのメンバー関数func()には、2つの静的変数aとbが含まれています。 aのデフォルト値は0で、bの値は12です。次に、これらの値が表示されます。これを示すコードスニペットは次のとおりです。

class Base {
   public :
   int func() {
      static int a;
      static int b = 12;
      cout << "The default value of static variable a is: " << a;
      cout << "\nThe value of static variable b is: " << b;
   }
};

main()関数では、クラスBaseのオブジェクトbが作成されます。次に、関数func()が呼び出されます。これを示すコードスニペットは次のとおりです。

int main() {
   Base b;
   b.func();
   return 0;
}

  1. C++で例外はどのように機能しますか

    C ++では、例外処理はランタイムエラーを処理するプロセスです。例外は、C++で実行時にスローされるイベントです。すべての例外は、std::exceptionクラスから派生します。処理可能なランタイムエラーです。例外を処理しない場合は、例外メッセージを出力してプログラムを終了します。 例外は、C ++標準では、プログラム内で使用できるクラスとして定義されています。親子クラス階層の配置を以下に示します- C++の一般的な例外クラスは-です。 Sr.No。 例外と説明 1 std ::exception これは、すべての標準C++例外の例外および親クラスです。

  2. JavaからC++関数を呼び出す方法は?

    ネイティブメソッドを使用する手順は次のとおりです。 CPPプログラムのヘッダーファイル(.hファイル)を作成します。 CPPファイルを作成する DLLを作成する Javaコードで、メソッドをネイティブとして宣言し、System.loadLibrary()メソッドを使用してDLLをロードし、メソッドを呼び出します。