Me confunde. Lo mejor que pude encontrar fue leer el tutorial de cplusplus.com y todo lo que tienen que decir sobre punteros a clases.Cuándo utilizar el puntero a una clase y cuándo simplemente crear una instancia como una variable
"es perfectamente válida para crear punteros que apuntan a clases. Simplemente tenemos que tener en cuenta que una vez declarada, una clase se convierte en un tipo válido, por lo que podemos utilizar el nombre de clase como el tipo para el puntero"
Lo cual no me dice nada acerca de cuándo usarlos sobre la instanciación normal. He visto el operador -> muchas veces y he visto algunos códigos, pero no puedo descifrar por qué lo hicieron.
Se apreciarán los ejemplos genéricos; pero más específicamente relacionado con la programación de GUI. Es donde lo encontré primero.
QGridLayout *mainLayout = new QGridLayout;
mainLayout->addWidget(nameLabel, 0, 0);
mainLayout->addWidget(nameLine, 0, 1);
mainLayout->addWidget(addressLabel, 1, 0, Qt::AlignTop);
mainLayout->addWidget(addressText, 1, 1);
Por qué no
QGridLayout mainLayout
mainLayout.addWidget
...
(Es imposible compilar si cambio el código de ejemplo a eso y probar, pero usted consigue el punto)
Gracias de antemano
Posibles duplicados: http://stackoverflow.com/questions/4029970/c-what-are-scenarios-where-using-pointers-is-a-good-ideatm-closed http://stackoverflow.com/questions/2144698/common-uses-for-pointers –
Asegúrese de no cometer el error de pensar "Qt hace las cosas de esta manera, por lo que C++ hace las cosas de esta manera". Creo que a muchas personas, incluido yo, no les gusta la forma en que Qt hace muchas cosas, y la gestión de la memoria es una de ellas. Pero cuando está en Roma ... – GManNickG
Los apuntadores no apuntan a las clases. Los punteros apuntan a los objetos. –