Metodi di classe C++


Metodi di classe

I metodi sono funzioni che appartengono alla classe.

Esistono due modi per definire le funzioni che appartengono a una classe:

  • Definizione di classe interna
  • Definizione di classe esterna

Nell'esempio seguente, definiamo una funzione all'interno della classe e la chiamiamo " myMethod".

Nota: accedi ai metodi proprio come accedi agli attributi; creando un oggetto della classe e usando la sintassi del punto ( .):

Esempio interno

class MyClass {        // The class
  public:              // Access specifier
    void myMethod() {  // Method/function defined inside the class
      cout << "Hello World!";
    }
};

int main() {
  MyClass myObj;     // Create an object of MyClass
  myObj.myMethod();  // Call the method
  return 0;
}

Per definire una funzione al di fuori della definizione di classe, devi dichiararla all'interno della classe e quindi definirla al di fuori della classe. Questo viene fatto specificando il nome della classe, seguito ::dall'operatore di risoluzione dell'ambito, seguito dal nome della funzione:

Esempio esterno

class MyClass {        // The class
  public:              // Access specifier
    void myMethod();   // Method/function declaration
};

// Method/function definition outside the class
void MyClass::myMethod() {
  cout << "Hello World!";
}

int main() {
  MyClass myObj;     // Create an object of MyClass
  myObj.myMethod();  // Call the method
  return 0;
}

Parametri

Puoi anche aggiungere parametri:

 Esempio

#include <iostream>
using namespace std;

class Car {
  public:
    int speed(int maxSpeed);
};

int Car::speed(int maxSpeed) {
  return maxSpeed;
}

int main() {
  Car myObj; // Create an object of Car
  cout << myObj.speed(200); // Call the method with an argument
  return 0;
}