[C con Clase] Aclaracion punteros

anarkik anarkik anarkicat en gmail.com
Mie Jul 20 00:41:07 CEST 2011


Hola, este es mi primer mensaje, aunque llevo un tiempo leyendo la lista de
correo.

Me gustaria alguna aclaracion si puede ser sobre los punteros. Soy
estudiante de programacion, pero solo estudiamos con Java, y en Java, como
ya sabeis, el programador no maneja los punteros directamente, si no me
equivoco lo hace java de manera interna. El tema es que llevo un tiempo
aprendiendo c++ por mi cuenta, y quisiera algunas aclaraciones, si puede
ser.

El tema es el siguiente... he leido bastante y he provado tambien sobre
esto, entiendo a la perfeccion que es un puntero, y los he usado sin ningun
problema, pero no acabo de comprender el concepto, es decir, por lo que he
leido, se dice que son muy utiles, pero yo sigo sin verle tan gran utilidad
"supongo que por la poca complejidad de los programas que aun estoy
haciendo". De momento, estoy haciendo todos los ejercicios que tenia para
java, y aun no he necesitado de punteros "o al menos eso creo".

Me gustaria saber, en que momento es necesario usar punteros, ya que como he
dicho, no se que utilidad encontrarle, ya que uso las variables
directamente, y no se queventaja me podria dar un puntero que apunte a esas
variables... estaria bien algun ejemplo practico de donde se deben usar
punteros.

Otra cosa que he leido y no acabo de entender, es que se dice que los
punteros se pueden usar para hacer arrays dinamicos, pero en todo lo que he
visto, siempre se le especifica el tamaño del array... entonces, en realidad
no es dinamico, no? por ejemplo en java, esta ArrayList, LinkedList,
TreeSet, etc.. que son dinamicos y en ningun momento le digo que tamaño de
memoria debe usar.

Y una ultima cosa, y que me podria servir de ejemplo... estoy usando
librerias qt para entorno grafico, i siguiendo con esto de los punteros os
pongo un ejemplo:

#include <qapplication.h>
#include <qlabel.h>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QLabel *label = new QLabel("Hello Qt!");
    label->show();
    return app.exec();
}


Por que se usa el label como puntero? no seria lo mismo usarlo sin ser
puntero? que ventaja tiene usarlo como puntero, yh porque razon en ese
ejemplo se usa como puntero?


Espero algunas aclaraciones, muchas gracias de antemano.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20110720/d26b6329/attachment.html>


Más información sobre la lista de distribución Cconclase