La Coctelera

SciFish.

Explicaciones y refutaciones en un mundo que pasa.

« Renato. | Inicio | Tuned. »

25 Enero 2006

Serendipia++.

Ayer me preguntaron por la creación de arrays en C++ con un número de elementos no conocido en tiempo de compilación.

Mi respuesta no pudo ser otra que la de manual:

Pero luego me aseguraron que si lo hacían así el código les cascaba en algún lugar, no muy bien identificado.

Me comentaron que la solución que habían encontrado finalmente era hacer:

Con mis conocimientos previos de C++ yo pensaba que esto no podía ser, no se podía usar la "fórmula" de creación de un array estático para hacer uno dinámico.

Pero luego, a base de empeñarme, encontré en la red esto, que parece que quiere decir que desde hace algún tiempo los compiladores g++ te posibilitan este truco siempre y cuando seas consciente de que tu array se comporta como una variable local dentro de un ámbito y que cuando el nombre de la variable sale del mismo la memoria es liberada. La reserva de memoria en este caso se hace contra el stack.

Me quedé sorprendido cuando, además, me dijeron que ellos no sabían que esto era una particularidad de g++ (y no sé de cuantos compiladores más).

Habían llegado a formar esta curiosa expresión que les funcionaba por analogía con los arrays de Pascal.

Serendipia++.

Ps.

Y ahora que levante la patita el que ya supiera esto, lo hubiera usado antes o tenga más información acerca de esta construcción, por ejemplo, si se sabe que pertenezca o no al estándar.

Yo de momento, aunque sea elegante y cómodo, y vaya contra el stack no lo utilizaría por motivos de posible no portabilidad.

¿Cuánto código de gnu utilizará esta característica?.

servido por scifish sin comentarios compártelo

sin comentarios · Escribe aquí tu comentario

Escribe tu comentario

« Renato. | Inicio | Tuned. »


Sobre mí

Desde los tiempos de Automática me llaman jima porque jima is my acronym...

Algún día seré totalmente real, por el momento tengo una mitad siempre en el futuro, como la tortuga y Aquiles.

email me

under construction...

Creative Commons License
Subscribe with Bloglines
EOF

Últimos comentarios

Fotos

scifish todavía no ha subido ninguna foto.

¡Anímale a hacerlo!

Buscar

suscríbete

Selecciona el agregador que utilices para suscribirte a este blog (también puedes obtener la URL de los feeds):

¿Qué es esto?

Crea tu blog gratis en La Coctelera