Google
 

jueves, julio 20, 2006

Desmitificando C++

Es un error común confundir el lenguaje C con el C++, la verdad es que son dos lenguajes muy diferentes. Como C es el lenguaje más rapido, con perdón del ensamblador, muchos piensan que por regla de tres C++ debe ser igual de rápido. C++ es rápido pero no tanto como C, características del lenguaje como funciones virtuales, RTTI, clases, herencia, etc... lo sobrecargan haciendolo un poquito más lento que el C.

La diferéncia es escasa pero suficiente para que lenguajes como OCaml se muestren más rapido que el C++ pero más lento que el C.

2 comentarios:

Anónimo dijo...

También hay casos donde C++ bate a C en velocidad gracias a los templates. Creo que se comenta en el Effective C++ o More Effective C++ ;)

Victor M. dijo...

Estaba hablando en sentido más general no en algoritmos concretos. Los templates no se pueden aplicar a todos los casos.

De cualquier forma lo que se puede hacer con templates se puede hacer igual de optimizado en C (con mucha paciencia pero se puede).