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

C++の仮想関数


このチュートリアルでは、C++の仮想関数を理解するためのプログラムについて説明します。

仮想関数は、基本クラスで定義されたメンバー関数であり、子クラスでもさらに定義できます。派生クラスの呼び出し中に、上書きされた関数が呼び出されます。

#include <iostream>
using namespace std;
class base {
   public:
   virtual void print(){
      cout << "print base class" << endl;
   }
   void show(){
      cout << "show base class" << endl;
   }
};
class derived : public base {
   public:
   void print(){
      cout << "print derived class" << endl;
   }
   void show(){
      cout << "show derived class" << endl;
   }
};
int main(){
   base* bptr;
   derived d;
   bptr = &d;
   //calling virtual function
   bptr->print();
   //calling non-virtual function
   bptr->show();
}
を呼び出します

出力

print derived class
show base class

  1. C ++のlog()関数

    C / C++ライブラリ関数doublelog(double x)は、xの自然対数(baseelogarithm)を返します。以下はlog()関数の宣言です。 double log(double x) パラメータは浮動小数点値です。そして、この関数はxの自然対数を返します。 例 #include <iostream> #include <cmath> using namespace std; int main () {    double x, ret;    x = 2.7;    /* finding l

  2. C++でのフレンドクラスと関数

    クラスのフレンド関数はそのクラスのスコープ外で定義されていますが、クラスのすべてのプライベートメンバーと保護されたメンバーにアクセスする権利があります。フレンド関数のプロトタイプはクラス定義に表示されますが、フレンドはメンバー関数ではありません。 フレンドは、関数、関数テンプレート、メンバー関数、またはクラスまたはクラステンプレートにすることができます。この場合、クラス全体とそのすべてのメンバーがフレンドになります。 関数をクラスのフレンドとして宣言するには、次のように、クラス定義の関数プロトタイプの前にキーワードfriendを付けます- class Box { double width;