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

C++のデフォルトコンストラクタ


コンストラクターは、クラスの新しいオブジェクトが作成されたときに実行されるクラスの関数です。コンストラクターはクラスと同じ名前であり、戻り型はなく、voidでさえありません。これらは主に、クラスの変数の初期値を提供するのに役立ちます。コンストラクターの2つの主なタイプは、デフォルトのコンストラクターとパラメーター化されたコンストラクターです。

デフォルトのコンストラクターはパラメーターを取りません。デフォルトのコンストラクターがプログラマーによって明示的に提供されていない場合、コンパイラーは暗黙のデフォルトのコンストラクターを提供します。その場合、変数のデフォルト値は0です。

デフォルトのコンストラクターを示すプログラムは次のとおりです。

#include <iostream>
using namespace std;
class DemoDC {
   private:
   int num1, num2 ;
   public:
   DemoDC() {
      num1 = 10;
      num2 = 20;
   }
   void display() {
      cout<<"num1 = "<< num1 <<endl;
      cout<<"num2 = "<< num2 <<endl;
   }
};
int main() {
   DemoDC obj;
   obj.display();
   return 0;
}

出力

num1 = 10
num2 = 20

上記のプログラムでは、クラスDemoDCには、num1とnum2を10と20として初期化するデフォルトのコンストラクターが含まれています。また、num1とnum2の値を出力する関数display()も含まれています。このためのコードスニペットは次のとおりです。

class DemoDC {
   private:
   int num1, num2
   public:
   DemoDC() {
      num1 = 10;
      num2 = 20;
   }
   void display() {
      cout<<"num1 = "<< num1 <<endl;
      cout<<"num2 = "<< num2 <<endl;
   }
};

関数main()には、クラスタイプDemoDCのオブジェクトのオブジェクト定義が含まれています。次に、関数display()が呼び出されます。これを以下に示します。

DemoDC obj;
obj.display();

  1. C ++のコンストラクター内で仮想関数を呼び出す方法は?

    コンストラクタまたはデストラクタから仮想関数を呼び出すことは危険であり、可能な限り避ける必要があります。これは、呼び出す仮想関数が派生クラスではなく基本クラスから呼び出されるためです。 C ++では、すべてのクラスが独自の構造に入る前に、そのバージョンの仮想メソッドテーブルを構築します。したがって、コンストラクターで仮想メソッドを呼び出すと、Baseクラスの仮想メソッドが呼び出されます。または、そのレベルで実装がない場合は、純粋仮想メソッド呼び出しが生成されます。 Baseが完全に構築されると、コンパイラはDerivedクラスの構築を開始し、Derivedクラスの実装を指すようにメソッドポイ

  2. LinuxでのC++の最高のIDEは何ですか?

    大きなプロジェクトは、単なるテキストエディタでは管理が困難です。このような場合にIDEを使用すると、生産性が向上し、フラストレーションが軽減される可能性があります。 IDEにはさまざまな種類があり、ニーズに合ったものを選択する必要があります。 Linux上のC++に最適なIDEは1つではありません。ツールは賢く選ぶ必要があります。 Linux用の人気のあるIMOの最高のIDEのリストは次のとおりです。 C /C++開発用のNetbeans- Netbeansは、C /C++および他の多くのプログラミング言語向けの無料のオープンソースで人気のあるクロスプラットフォームIDEです。コミュニテ