es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo insertar un objeto en C++?

Hola, el código debajo es un ejemplo simple de una clase en C++.

“`C++
#include <iostream>

using namespace std;

class Car { // La clase
public: // Especificador de acceso
string brand; // Atributo
string model; // Atributo
int year; // Atributo
Car(string x, string y, int z) { // Constructor con parámetros
brand = x;
model = y;
year = z;
}
};

int main() {
// Crear objetos Car y llamar al constructor con diferentes valores
Car carObj1("BMW", "X5", 1999);
Car carObj2("Ford", "Mustang", 1969);

// Imprimir valores
cout << carObj1.brand << " " << carObj1.model << " " << carObj1.year << "\n";
cout << carObj2.brand << " " << carObj2.model << " " << carObj2.year << "\n";
return 0;
}
// W3Schools

<pre><code><br />Como lo veo, la manera de definir un objeto es escribiéndolo en el código como:

“`C++
<nombredeclase> <nombredeobjeto>

Ahora mi pregunta es: ¿Existe una forma de ingresar un objeto, como cin >> NombreDeObjeto; y luego ingresar los parámetros? ¿Es esto posible en absoluto?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Sí, es posible ingresar un objeto utilizando el operador cin en C++. Sin embargo, dado que la clase Car en el ejemplo anterior tiene un constructor con parámetros, necesitamos utilizar un enfoque diferente para ingresar los valores para el objeto.

    Podemos definir una función fuera de la clase que tome entrada para el objeto y devuelva el objeto de esa clase. Aquí te presentamos un ejemplo:

    Car inputCar() {
      string marca, modelo;
      int anio;
      cout << "Ingrese la marca: ";
      cin >> marca;
      cout << "Ingrese el modelo: ";
      cin >> modelo;
      cout << "Ingrese el año: ";
      cin >> anio;
      Car carObj(marca, modelo, anio);
      return carObj;
    }
    
    int main() {
      // Input Car objects
      Car carObj1 = inputCar();
      Car carObj2 = inputCar();
    
      // Print values
      cout << carObj1.marca << " " << carObj1.modelo << " " << carObj1.anio << "\n";
      cout << carObj2.marca << " " << carObj2.modelo << " " << carObj2.anio << "\n";
    
      return 0;
    }
    

    En este código, definimos una función inputCar() que toma entrada para el objeto Car y devuelve el objeto. Usamos esta función para crear dos objetos Car carObj1 y carObj2 en la función main().

    Luego, podemos usar el operador . para acceder a los atributos de los objetos Car e imprimir los valores.

    ¡Esperamos que esto te sea útil!

Comments are closed.