Menu
Coddy logo textTech

Metodi (funzioni membro)

Fa parte della sezione Programmazione orientata agli oggetti del percorso C++ di Coddy. Lezione 8 di 104.

Le funzioni membro definiscono ciò che un oggetto può fare. Hanno un tipo restituito, un nome e parametri facoltativi.

Metodo che restituisce un valore

class Calculator {
public:
    int add(int a, int b) {
        return a + b;
    }
};

Metodo void (nessun valore restituito)

class Printer {
public:
    void printMessage(std::string msg) {
        std::cout << msg << std::endl;
    }
};

Metodo che restituisce bool

class Checker {
public:
    bool isPositive(int num) {
        return num > 0;
    }
};

Dichiarazione nell'header, implementazione nel sorgente

// Calculator.h
class Calculator {
public:
    int add(int a, int b);
};

// Calculator.cpp
int Calculator::add(int a, int b) {
    return a + b;
}

Il tipo restituito precede il nome del metodo. Usa void quando un metodo non restituisce nulla. L’operatore di risoluzione dell’ambito :: collega le implementazioni alla loro classe.

challenge icon

Sfida

Medio

Implementa quattro funzioni membro per la classe StringHelper con diversi tipi restituiti e parametri:

  • getLength(): restituisce int, la lunghezza del testo
  • toUpperCase(): restituisce std::string, il testo in maiuscolo
  • contains(std::string word): restituisce bool, indica se il testo contiene la parola
  • repeat(int times): restituisce std::string, il testo ripetuto con spazi

Provalo tu

#include <iostream>
#include "StringHelper.h"

int main() {
    std::string input;
    std::getline(std::cin, input);
    
    StringHelper helper;
    helper.text = input;
    
    std::cout << "Original: " << helper.text << std::endl;
    std::cout << "Length: " << helper.getLength() << std::endl;
    std::cout << "Uppercase: " << helper.toUpperCase() << std::endl;
    std::cout << "Contains 'World': " << (helper.contains("World") ? "yes" : "no") << std::endl;
    std::cout << "Repeated: " << helper.repeat(3) << std::endl;
    return 0;
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Programmazione orientata agli oggetti

Esercitati da solo: Compilatore C++ online