Grundlagen für das Projekt (Teil 1)

2. Zeiger und Referenzen

2.3. Speicher von Zeigern in einer Liste

Worum geht es? 

Dieses Code-Beispiel zeigt, wie man Zeiger in einem Vektor speichert. Wenn man nur die Adresse einer Variablen in einem Vektor speichert, kann man darauf zugreifen und deren Wert ändern, ohne die tatsächliche Variable direkt zu beeinflussen. Dies kann besonders nützlich sein, wenn man mehrere Variablen verwalten möchte, ohne sie direkt in den Vektor zu kopieren.

Was kannst du danach?

  • Zeiger in einem Vektor speichern
  • Zugriff auf den Wert an der Adresse eines Vektor-Elements


#include <iostream>
#include <vector>

using namespace std; 

int main() 
{
    // Variablen in Vektor speichern
    int l{1}, m{2}, n{3};
    vector<int> v1{l, m};
    v1.push_back(n);

    // Achtung: Vektor erzeugt Kopie
    v1.at(0) = 4;
    cout << v1.at(0) << endl;
    cout << l << endl;
    
    return 0;
}

#include <iostream>
#include <vector>

using namespace std; 

int main() 
{
    // Zeiger in Vektor speichern
    int o{1}, p{2}, q{3};    
    vector<int *> v2{&o, &p, &q};
    *v2.at(0) = 4;
    
    cout << "Adresse: " << v2.at(0);
    cout << " Wert: " << *v2.at(0) << endl;
    cout << "Adresse: " << &o;
    cout << " Wert: " << o << endl;
    
    return 0;
}