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

C ++の空のクラスのオブジェクトのサイズはどれくらいですか?


以下は、空のクラスのオブジェクトのサイズを見つける例です。

#include <bits/stdc++.h>
using namespace std;
class p1 {
   public:
   void first() {
      cout << "\nThe parent class p1 function is called.";
   }
};
class p2
{ };
int main() {
   cout << "The size of non-empty class p1 = " << sizeof(p1);
   cout << "\nThe size of empty class p2 = " << sizeof(p2);
   p2 p;
   cout << "\nThe size of object of empty class p2 = " << sizeof(p);
   p1 o;
   cout << "\nThe size of object of non-empty class p1 = " << sizeof(o);
   return 0;
}

出力

The size of non-empty class p1 = 1
The size of empty class p2 = 1
The size of object of empty class p2 = 1
The size of object of non-empty class p1 = 1

上記のプログラムでは、空のクラスp2が作成されます。

class p2
{ };

クラスとオブジェクトのサイズは次のように出力されます-

cout << "The size of non-empty class p1 : " << sizeof(p1);
cout << "\nThe size of empty class p2 : " << sizeof(p2);
p2 p;
cout << "\nThe size of object of empty class : " << sizeof(p);
p1 o;
cout << "\nThe size of object of non-empty class p1 : " << sizeof(o);

  1. C#のオブジェクトクラス

    Objectクラスは、C#のすべてのクラスの基本クラスです。 C#では次のメソッドがあります。 Sr.No メソッドと説明 1 Equals(Object) 指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判別します。 2 Equals(Object、Object、 指定されたオブジェクトインスタンスが等しいと見なされるかどうかを決定します。 3 Finalize() オブジェクトがリソースを解放しようとすることを許可します 4 GetHashCode() デフォルトのハッシュ関数。 5

  2. Java 9でのCleanerクラスの使用法は何ですか?

    プログラムの実行中に作成されたオブジェクトはガベージコレクターによって自動的に削除されます (GC)。スレッドによって参照されていないオブジェクトがあり、JVMがこのオブジェクトにアクセスできないと判断した場合、そのオブジェクトはガベージコレクションの対象となる可能性があります。 Objectクラスにはfinalize()があります GCによって自動的に呼び出されるメソッド ヒープからオブジェクトを削除しようとする前。 Java 9 、 finalize() メソッドは非推奨になりました および新しいクラスjava.lang.ref.Cleaner ガベージコレクション管理に追加されまし