Objetos en C [Was: Re: OT: Pregunta de C]
Carlos Manuel Duclos Vergara
carlos en embedded.cl
Mar Nov 23 20:24:37 CLST 2004
>
> no he visto codigo fuente en C de mas de un archivo que no tenga una macro
> por ahi. Igual seria bueno que las macros empezaran con una letra especial
> para distinguirlas y no andar buscandolas con el gdb
>
para eso debieras usar el _ antes de las declaraciones, aun cuando casi no se
usa se supone que de esa forma se podian distinguir.
> [...]
>
> >Porque C++ arrastra un monton de costos que son dificiles de predecir para
> >el usuario comun, y requiere un monton de apoyo de runtime (que en el
> >nucleo _no existe_). Por lo demas, el sistema de objetos al interior de
> >Linux hace cosas que en C++ son imposibles de hacer limpiamente (si, son
> >necesarias cosas como heredar de una clase y cambiarle funciones miembro).
>
> mas que clases son interfaces (como las de delphi)?
>
es que la definicion de clase es algo difuso: una clase es la suma de
estructuras de datos + metodos para operar en ellas. En C++ hay mecanismos
automaticos para trabajar con ellas, en C tienes que armarlos tu en gran
parte. De ahi que con C++ no se puedan hacer algunas cosas como cambiar
funciones miembros (aun cuando en teoria con sobrecarga se podria llegar a
algo similar)
> >Si, pueden escribirse S.O.'s en C++, pero el disen~o debe considerar el
> >lenguaje y su modelo de objetos (el cuento de "disen~o independiente del
> >lenguaje" es el mayor de los muchos crimenes de los "ingenieros de
> >software"...)
eCos es un buen ejemplo de un SO programado en C++ (y hasta funciona!!!)
--
Carlos Manuel Duclos Vergara
carlos en embedded.cl
http://www.elbazaar.cl/
Más información sobre la lista de distribución Linux