Hola
Para que funcione de la forma que lo estás haciendo, necesitas que Correcto sea una variable global, busca en google "variables globales en c" y vas a encontrar mejores explicaciones de las que yo pueda darte.
Aunque yo te propongo otra forma y es "aprovechar" las características de Qt. Imagino que has mirado la documentación, si no es así, deberías hacerlos. Verás que, aparte de show, la clase QDialog tiene otro método,
exec, que, además, retorna un entero. Puedes mostrar la ventana con exec y aprovechar el valor de retorno para saber si el usuario se logeó correctamente o no.
Se suelen usar dos constantes definidas en Qt:
http://doc.qt.io/qt-5/qdialog.html#DialogCode-enum
Tu puedes cerrar la ventana con
accept si el usuario se loguea correctamente y con
reject en caso contrario.
Un saludo