vector<struct> :wie auf elemente zugreifen?



  • hallo

    ich habe folgenden code im web gefunden und möchte das ergebnis mit zb printf ausgeben:

    struct ayrit
    {

    bool kullanimda;
    int w;
    int d1;
    int d2;
    ayrit (int id1, int id2, int agirlik) : d1 (id1), d2 (id2), w (agirlik)
    {
    kullanimda = false;
    }

    }

    int main ()
    {
    vector<ayrit> S;
    vector<ayrit> G;

    G.push_back (ayrit (1, 2, 2));
    G.push_back (ayrit (1, 2, 2));
    //.....
    S = FunktionVon (G);
    ...

    ich möchte die werte von S ausgeben, weiß aber nicht wie. ich weiß wie vectoren alleine funktionieren und structs. aber die kombination verwirrt mich.
    bin über jegliche hilfe dankbar

    mfg markus



  • Markus1978 schrieb:

    hallo

    ich habe folgenden code im web gefunden und möchte das ergebnis mit zb printf ausgeben:

    struct ayrit
    {

    bool kullanimda;
    int w;
    int d1;
    int d2;
    ayrit (int id1, int id2, int agirlik) : d1 (id1), d2 (id2), w (agirlik)
    {
    kullanimda = false;
    }

    }

    int main ()
    {
    vector<ayrit> S;
    vector<ayrit> G;

    G.push_back (ayrit (1, 2, 2));
    G.push_back (ayrit (1, 2, 2));
    //.....
    S = FunktionVon (G);
    ...

    ich möchte die werte von S ausgeben, weiß aber nicht wie. ich weiß wie vectoren alleine funktionieren und structs. aber die kombination verwirrt mich.
    bin über jegliche hilfe dankbar

    mfg markus

    #include <iostream>
    
    ...
    
    std::ostream &operator(std::ostream &os, const ayrit &st)
    {
    	os << st.kullanimda << " " << st.w << " " << st.d1 << " "  << st.d2; 
    }
    
    ...
    
    vector<ayrit> S; 
    
    ...
    
    std::copy(
    	s.begin(), 
    	s.end(), 
    	std::ostream_iterator<ayrit>(std::cout, "\n"));
    


  • @ssm
    *psst* kleiner Fehler << bei operator<< vergessen 🙂



  • kingruedi schrieb:

    @ssm
    *psst* kleiner Fehler << bei operator<< vergessen 🙂

    😞

    return os;


Anmelden zum Antworten