Estoy aprendiendo C++, y me he encontrado con el siguiente dilema:Crear referencia al nuevo objeto
Como ++ novato C, he leído que el uso de referencia en lugar de punteros (cuando sea posible) es generalmente una buena idea, así que estoy tratando de acostumbrarme temprano. Como resultado, tengo una gran cantidad de métodos que tienen la forma general de
void myMethod(ParamClass const& param);
Ahora, me pregunto cuál es la mejor manera de llamar a estos métodos. Por supuesto, cada llamada se necesita un objeto diferente se pasa como parámetro, y por lo que sé que la única manera de crear es el nuevo operador, por lo que ahora estoy haciendo lo siguiente:
myObject.myMethod(*new ParamClass(...));
Si bien esto método funciona totalmente, me pregunto si no hay otra "forma C++" ya establecida de hacer esto.
¡Gracias por la ayuda! Dan
haciendo eso, tiene una pérdida de memoria, porque nunca mantendrá el valor del puntero en ninguna parte. – Benoit
El libro, "Programación de la GUI de C++ con Qt 4", tiene un apéndice excelente llamado "Introducción a C++ para programadores Java y C#". Si ese es el fondo desde el que viene, probablemente proporcione un "inicio rápido" eficiente para cambiar algunos de los patrones establecidos entre los idiomas. La mayoría de las bibliotecas pueden obtener una copia usando ILL si no desea comprar el libro. (Si está considerando usar Qt, sin embargo, * obtenga el libro *. –