Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: fafafa01 en 3 Septiembre 2017, 20:51 pm



Título: ¿Puedo crear el concepto de "clases" con estructuras y memoria dinamica en C?
Publicado por: fafafa01 en 3 Septiembre 2017, 20:51 pm
Hola, estoy aprendiendo POO en C++ y conozco algo de C.

Mi duda es si en C, con estructuras creadas por nosotros y con los distintos tipos de punteros (int, char, a funcones, etc) y memoria dinamica se podría crear algo parecido a las clases de C++.
También me gustaría saber si todo programa creado en C++, se podría crear en C.

Saludos.


Título: Re: ¿Puedo crear el concepto de "clases" con estructuras y memoria dinamica en C?
Publicado por: ivancea96 en 3 Septiembre 2017, 21:03 pm
Todo programa creado en cualquier lenguaje se puede hacer en C (salvando que la plataforma de destino reuiqera un lenguaje especial oalgo así).

Puedes hacer en C lo que hacen las clases de C++. Pero C++ tiene muchas facilidades en este aspecto que C no tiene. En C lo más que podrás hacer es crear estructuras y manejarlas con funciones que hagan las veces de métodos, por ejemplo. Pero los conceptos como constructor, destructor, herencia... tendrás que hacerlos manualmente. Especialmente si hablamos de herencia, vas a tener serios problemas haciéndolo "parecido a C++".

Si quieres programación orientada a objetos, lo mejor es que programes C++. No tiene mucha utilidad a día de hoy programar C en vez de C++ (salvo que sea estrictamente necesario, como por carencia de compiladores para alguna plataforma)