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

C++の静的メンバー関数を使用してオブジェクトの数をカウントします


ここでは、いくつかの静的メンバー関数を使用して、特定のクラスから作成されたオブジェクトの数をカウントする方法を説明します。静的メンバーはクラスプロパティであり、オブジェクトプロパティではありません。単一のクラスの場合、静的メンバーのインスタンスは1つだけです。オブジェクトごとに新しいメンバーは作成されません。

この問題では、オブジェクトの数を追跡するために1つの静的カウンター変数を使用しています。その後、静的メンバーがカウント値を表示します。

新しいオブジェクトが作成されると、コンストラクターが呼び出されます。コンストラクター内では、カウント値が増加します。したがって、出力を取得できます。

#include <iostream>
using namespace std;
class My_Class{
   private:
      static int count;
   public:
      My_Class() { //in constructor increase the count value
         cout << "Calling Constructor" << endl;
         count++;
      } static int objCount() {
         return count;
      }
   };
int My_Class::count;
main() {
   My_Class my_obj1, my_obj2, my_obj3;
   int cnt;
   cnt = My_Class::objCount();
   cout << "Number of objects:" << cnt;
}

出力

Calling Constructor
Calling Constructor
Calling Constructor
Number of objects:3

  1. C ++を使用してOpenCVのフレームの総数をカウントするにはどうすればよいですか?

    OpenCVでフレームの総数を計算する方法を学びます。 OpenCVを使用すると、ビデオのフレームの総数をカウントして表示するのが基本です。ただし、リアルタイムビデオフレームの総数をカウントできないことに注意する必要があります。リアルタイム動画には特定のフレーム数がないためです。 次のプログラムは、合計フレーム数をカウントし、コンソールウィンドウに表示します。 例 #include<opencv2/opencv.hpp> #include<iostream> using namespace std; using namespace cv; int main() { &

  2. C++で1xmサイズのタイルを使用してサイズnxmの床をタイル張りする方法の数を数えます

    部屋の床の長さと幅を表す2つの数字nとmが与えられます。目標は、サイズ1Xmのタイルを使用してこの床をタイル張りできる方法の数を数えることです。 例 入力 n=3 m=2 出力 Count the number of ways to tile the floor of size n x m using 1 x m size tiles are: 3 説明 方法は、以下に示すように配置された3つの1x2タイルになります- 入力 n=3 m=3 出力 Count the number of ways to tile the floor of size n x m using 1 x m