Menu
Coddy logo textTech

Métodos (Funciones miembro)

Parte de la sección Programación Orientada a Objetos del Journey de C++ de Coddy — lección 8 de 104.

Las funciones miembro definen lo que un objeto puede hacer. Tienen un tipo de retorno, un nombre y parámetros opcionales.

Método que devuelve un valor

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

Método void (sin valor de retorno)

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

Método que devuelve un bool

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

Declaración en el encabezado, implementación en el código fuente

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

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

El tipo de retorno va antes del nombre del método. Usa void cuando un método no devuelve nada. El operador de resolución de ámbito :: vincula las implementaciones con su clase.

challenge icon

Desafío

Intermedio

Implementa cuatro funciones miembro para la clase StringHelper con diferentes tipos de retorno y parámetros:

  • getLength() — devuelve int, la longitud del texto
  • toUpperCase() — devuelve std::string, el texto en mayúsculas
  • contains(std::string word) — devuelve bool, si el texto contiene la palabra
  • repeat(int times) — devuelve std::string, el texto repetido con espacios

Hoja de referencia

Las funciones miembro definen lo que un objeto puede hacer. Tienen un tipo de retorno, un nombre y parámetros opcionales.

Método que devuelve un valor:

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

Método void (sin valor de retorno):

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

Método que devuelve bool:

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

Declaración en el encabezado, implementación en el código fuente:

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

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

El tipo de retorno va antes del nombre del método. Use void cuando un método no devuelve nada. El operador de resolución de ámbito :: vincula las implementaciones con su clase.

Pruébalo tú mismo

#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 iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Programación Orientada a Objetos