Saltar al contenido

La expresión de C++ debe tener un tipo de puntero a objeto

Queremos compartirte la mejor información que descubrimos por todo internet. Nuestro deseo es que te resulte útil y si deseas comentarnos algo que nos pueda ayudar a perfeccionar nuestra información hazlo libremente.

Solución:

Probablemente quisiste decir:

c_info[i].hoursWorked;

ya que c_info es un arrayhaciendo c_info[i] accederás a la i-ésima instancia (objeto) de Employee clase en c_info arrayy luego obtener hoursWorked a través de . operador.

Ahora puede ver claramente que su variante simplemente no tiene sentido, ya que hoursWorked es solo un tipo integral y no un arrayy por lo tanto no puede aplicar [] operador a ello.

c_info es un puntero a un empleado. Puede asignar un solo objeto asignado a dicho puntero o, en su caso, varios (new con el array sintaxis). Por lo que apunta a un array de los empleados.

Quitaste la referencia de ese puntero. Ya que apunta a un array de (múltiples) empleados, también apunta a la primera entrada. Luego accede a una variable miembro entera, que aún es posible. Pero luego intentas usar el array operador de subíndice ([]) en un valor entero, lo cual no es posible.

Probablemente quiso acceder a la variable miembro de la i-ésima entrada de su asignación array. Así que tienes que darle la vuelta a esto: primero usa el array operador de subíndice, luego acceda al miembro en ese Empleado en particular.

c_info[i] en palabras de bajo nivel significa: toma el puntero c_infoagregar i veces el tamaño del tipo al que apunta (por lo que apunta al i-ésima entrada) y desreferenciar esa dirección. Esto significa que c_info[i] en realidad es el empleado en el i-ésimo índice (pero no un puntero).

Entonces desea acceder a un miembro de ese empleado. Si todavía fuera un puntero, tendría que usar el operador de flecha, pero como usó el array operador de subíndice ([i]), ya lo has desreferenciado, tu el operador punto es el correcto:

cin >> c_info[i].hoursWorked;

Nos puedes añadir valor a nuestro contenido informacional colaborando tu experiencia en las ilustraciones.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *