[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Programación en C++



On Mon, 16 Oct 2000, Xose Manoel Ramos wrote:

> El Wed, Oct 11, 2000 at 08:37:36AM +0200, José Luis Ayala contaba:
> 
> > Especialmente, me interesaría que tratase
> > el tema de programación de drivers, pero si es más general tampoco me
> > importa.
> 
> Pregunta Lammer:
> 
> ¿Se pueden programar módulos del kernel en C++? Quiero decir, usando
> las carácterísticas del C++ (no compilando un programa C en el G++).

Si te refieres a hacer módulos (en el sentido de módulos del kernel),
supongo que si se puede. Para evitar la diferencia de nombrado de los
objetos de C++ y de C, puedes declarar en la cabecera las métodos C++ a
exportar de la forma:

extern "C" {

prototipos

};

De ese modo, el kernel será capaz de enlazar dichos objetos. Por supuesto,
no podrás utilizar una clase como interfaz, a no ser que hagas un wrapper
que encapsule la estructura C++.

Espero que te sirva de ayuda.

> 
> Estoy pensando que el kernel y programar a bajo nivel es la antitesis
> de lo que que en teoría son las ventajas de la programación OO. Pero
> bueno, hoy en día meten el C++ hasta en la sopa.

Hombre, en el ámbito del kernel Linux, es un poco contraproducente hacer
módulos en C++; sobre todo porque no existe una estructura de clases
auxiliares en C++ para apoyarse: Por ejemplo, no puedes usar streams para
sacar mensajes de debug, tendrás que usar el printk del kernel, porque no
hay infraestructura C++.

> 
> (Y con lo poco que me gusta)

En esto último estoy de acuerdo ;)


> -- 
> Saudos:
> ><ose        xmanoel@bigfoot.com   (Vigo/Galicia/España)
>          http://pagina.de/xmanoel/
>          http://w3.to/mikkeli/
> 
> 10/16 (10/16/1916) 1st birth control clinic opened (Brooklyn, NY by
> Margaret Sanger).  10/16 (10/16/1962) Manute Bol, pro basketball
> player.
> 
--
Manolo



Reply to: