Classi e oggetti C++


Classi/oggetti C++

C++ è un linguaggio di programmazione orientato agli oggetti.

Tutto in C++ è associato a classi e oggetti, insieme ai suoi attributi e metodi. Ad esempio: nella vita reale, un'auto è un oggetto . L'auto ha attributi , come peso e colore, e metodi , come guida e freno.

Attributi e metodi sono fondamentalmente variabili e funzioni che appartengono alla classe. Questi sono spesso indicati come "membri della classe".

Una classe è un tipo di dati definito dall'utente che possiamo utilizzare nel nostro programma e funziona come un costruttore di oggetti o un "progetto" per la creazione di oggetti.


Crea una classe

Per creare una classe, usa la classparola chiave:

Esempio

Crea una classe chiamata " MyClass":

class MyClass {       // The class
  public:             // Access specifier
    int myNum;        // Attribute (int variable)
    string myString;  // Attribute (string variable)
};

Esempio spiegato

  • La classparola chiave viene utilizzata per creare una classe chiamata MyClass.
  • La publicparola chiave è uno specificatore di accesso , che specifica che i membri (attributi e metodi) della classe sono accessibili dall'esterno della classe. Imparerai di più sugli specificatori di accesso più avanti.
  • All'interno della classe sono presenti una variabile intera myNume una variabile stringa myString. Quando le variabili vengono dichiarate all'interno di una classe, vengono chiamate attributi .
  • Infine, termina la definizione della classe con un punto e virgola ;.

Crea un oggetto

In C++, un oggetto viene creato da una classe. Abbiamo già creato la classe denominata MyClass, quindi ora possiamo usarla per creare oggetti.

Per creare un oggetto di MyClass, specificare il nome della classe, seguito dal nome dell'oggetto.

Per accedere agli attributi della classe ( myNume myString), utilizzare la sintassi del punto ( .) sull'oggetto:

Esempio

Crea un oggetto chiamato " myObj" e accedi agli attributi:

class MyClass {       // The class
  public:             // Access specifier
    int myNum;        // Attribute (int variable)
    string myString;  // Attribute (string variable)
};

int main() {
  MyClass myObj;  // Create an object of MyClass

  // Access attributes and set values
  myObj.myNum = 15; 
  myObj.myString = "Some text";

  // Print attribute values
  cout << myObj.myNum << "\n";
  cout << myObj.myString;
  return 0;
}

Oggetti multipli

Puoi creare più oggetti di una classe:

Esempio

// Create a Car class with some attributes
class Car {
  public:
    string brand;   
    string model;
    int year;
};

int main() {
  // Create an object of Car
  Car carObj1;
  carObj1.brand = "BMW";
  carObj1.model = "X5";
  carObj1.year = 1999;

  // Create another object of Car
  Car carObj2;
  carObj2.brand = "Ford";
  carObj2.model = "Mustang";
  carObj2.year = 1969;

  // Print attribute values
  cout << carObj1.brand << " " << carObj1.model << " " << carObj1.year << "\n";
  cout << carObj2.brand << " " << carObj2.model << " " << carObj2.year << "\n";
  return 0;
}

Esercizi C++

Mettiti alla prova con gli esercizi

Esercizio:

Crea un oggetto di MyClasschiamato myObj.

 ;