Vector di struct

di il
4 risposte

Vector di struct

Buona sera stavo esercitandomi con i vectori di struct e non capisco perchè questo codice da errore:

#include <iostream>
#include <string>
#include <vector>
struct person{
 std::string name;
 int age;
};
int main()
{
 int n, eta;
 std::string nome;
 std::vector<person> p;
 std::cout << "Inserisci il numero di persone: ";
 std::cin >> n;
 for (int i = 0;i < n; i++)
 {
  std::cout << "Nome: ";
  std::cin >> nome;
  p[i].name = nome;
  std::cout << "\nEtá: ";
  std::cin >> eta;
  p[i].age = eta;
 }
 }

4 Risposte

  • Re: Vector di struct

    Stai utilizzando degli elementi del vector che non esistono ...
  • Re: Vector di struct

    In codice ....
    
    #include <iostream>
    #include <string>
    #include <vector>
    
    using namespace std;
    
    struct person {
    	string name;
    	int age;
    };
    
    int main()
    {
    	int n;
    	person pp;
    	vector<person> p;
    
    	cout << "Inserisci il numero di persone: ";
    	cin >> n;
    
    	for (int i = 0; i < n; i++)
    	{
    		cout << "Nome: ";
    		cin >> pp.name;
    		cout << "Eta': ";
    		cin >> pp.age;
    
    		p.push_back(pp);
    	}
    
    	return 0;
    }
    
  • Re: Vector di struct

    Ok grazie ho capito
  • Re: Vector di struct

    Nota soprattutto

    using namespace std;

    per evitare di ripetere ovunque std::
Devi accedere o registrarti per scrivere nel forum
4 risposte