Latest web development tutorials

Este puntero en C ++

Clase C ++ y objetos Clase C ++ y objetos

En C + +, cada objeto puede pasareste puntero para acceder a su dirección.este puntero está implícita en todas las funciones miembro de los parámetros. Por lo tanto, el miembro interno de la función, que puede ser usado para el punto de la convocatoria objeto.

Noesta función amigo punteros porque un amigo no es miembro de la clase.Solamente los usuarios tienenesta función de puntero.

Los siguientes ejemplos ayudan a comprender mejor este concepto de punteros:

#include <iostream>
 
using namespace std;

class Box
{
   public:
      // 构造函数定义
      Box(double l=2.0, double b=2.0, double h=2.0)
      {
         cout <<"Constructor called." << endl;
         length = l;
         breadth = b;
         height = h;
      }
      double Volume()
      {
         return length * breadth * height;
      }
      int compare(Box box)
      {
         return this->Volume() > box.Volume();
      }
   private:
      double length;     // Length of a box
      double breadth;    // Breadth of a box
      double height;     // Height of a box
};

int main(void)
{
   Box Box1(3.3, 1.2, 1.5);    // Declare box1
   Box Box2(8.5, 6.0, 2.0);    // Declare box2

   if(Box1.compare(Box2))
   {
      cout << "Box2 is smaller than Box1" <<endl;
   }
   else
   {
      cout << "Box2 is equal to or larger than Box1" <<endl;
   }
   return 0;
}

Cuando el código se compila y ejecuta, produce los siguientes resultados:

Constructor called.
Constructor called.
Box2 is equal to or larger than Box1

Clase C ++ y objetos Clase C ++ y objetos