Estoy desarrollando una aplicación gráfica para el envío de SMS (ya lo comenté en otro post) y ahora me ha llegado el turno del 20% (la gran regla de la programación: 80% del trabajo en el 20% del tiempo y el 20% del trabajo en el 80% de tiempo).
El problema lo tengo en el uso y modificación de variables de una clase dentro de funciones static. Ya sé que para poder modificar variables de una clase desde funciones static hay que indicar primero el objeto de la clase, pero no sé que puede ocurrir.
Exactamente, en mi programa tengo una declaración del tipo:
Sms *window = new Sms();
Y dentro de la clase, en la parte privada, tengo una variable declarada del tipo Agenda (una clase mia), a la que quiero acceder desde la función estática. He probado a poner infinidad de cosas... y siempre me da el mismo error:
uso inválido del miembro ‘Sms::datosAgenda’ en la función miembro
He probado a pasarle a esa función el puntero this, ya que las funciones static no pueden acceder a él. El problema de esto radica en que el puntero this se lo tengo que pasar de forma que el tipo de datos sea void *. He probado a pasarlo a void *, pero luego a la hora de recuperarlo, ¿como hago la conversion?
PD: A ver si me ayudais a solucionarlo y cuelgo el programa y el codigo fuente para vuestro disfrute