Menu
Coddy logo textTech

Méthodes (Fonctions membres)

Fait partie de la section Programmation Orientée Objet du Journey C++ de Coddy — leçon 8 sur 104.

Les fonctions membres définissent ce qu'un objet peut faire. Elles ont un type de retour, un nom et des paramètres optionnels.

Méthode retournant une valeur

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

Méthode void (aucune valeur de retour)

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

Méthode retournant un booléen

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

Déclaration dans l'en-tête, implémentation dans le fichier source

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

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

Le type de retour se place avant le nom de la méthode. Utilisez void lorsqu'une méthode ne retourne rien. L'opérateur de résolution de portée :: lie les implémentations à leur classe.

challenge icon

Défi

Moyen

Implémentez quatre fonctions membres pour la classe StringHelper avec différents types de retour et paramètres :

  • getLength() — retourne int, la longueur du texte
  • toUpperCase() — retourne std::string, le texte en majuscules
  • contains(std::string word) — retourne bool, si le texte contient le mot
  • repeat(int times) — retourne std::string, le texte répété avec des espaces

Aide-mémoire

Les fonctions membres définissent ce qu'un objet peut faire. Elles ont un type de retour, un nom et des paramètres optionnels.

Méthode retournant une valeur :

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

Méthode void (aucune valeur de retour) :

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

Méthode retournant un booléen :

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

Déclaration dans l'en-tête, implémentation dans la source :

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

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

Le type de retour se place avant le nom de la méthode. Utilisez void lorsqu'une méthode ne retourne rien. L'opérateur de résolution de portée :: lie les implémentations à leur classe.

Essayez vous-même

#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 iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Programmation Orientée Objet