💩

programierds

Volver al curso
Lecciones 31 / 32

Objetos y Métodos en C

Si querés pensar en estilo orientado a objetos dentro de C, hay una idea fundamental:

una struct puede representar el estado, y un conjunto de funciones puede representar los métodos.

En esta lección vas a aprender:

  • cómo pensar un “objeto” en C
  • cómo asociar comportamiento a una estructura
  • cómo diseñar mejor las funciones que operan sobre una entidad

Estado + comportamiento

Estado

struct Rectangulo {
    float base;
    float altura;
};

Comportamiento

float calcularArea(struct Rectangulo r) {
    return r.base * r.altura;
}

¿Dónde estaría el “método” acá?

En C, el método no está metido dentro de la estructura como en lenguajes orientados a objetos nativos.

Pero conceptualmente, calcularArea cumple un rol parecido: es una operación propia de Rectangulo.

Diseño más claro con punteros

void escalar(struct Rectangulo* r, float factor) {
    r->base = r->base * factor;
    r->altura = r->altura * factor;
}

Acá la función modifica directamente el estado de la estructura.

Resumen

  • en C, una struct puede representar el estado de una entidad
  • las funciones relacionadas pueden pensarse como sus métodos conceptuales
  • este enfoque ayuda a diseñar software más claro y organizado

Idea final

La POO en C no se trata de imitar sintaxis ajena, sino de construir un diseño donde cada entidad tenga datos claros y operaciones coherentes sobre esos datos.