Variable Liste in einer Klasse



  • Hallo Ich möchte in einer Klasse eine Variable Liste haben, diese ich erst beim erstellen eines Objekt´s definiere.
    Meine ganzen versuche scheitern weil es wohl immer eine definierte Liste haben möchte...

    #define laenge 5
    
    class Tabelle
    {
    private:
    	// int laenge=10;
    	int Tab[laenge];
    public:
    	Tabelle (int l);
    	int TabLaenge();
    	void TabEingeben();
    	void TabAusgeben();
    	void tausche(int* a, int* b);
    	void bubble();
    	void quicksort(int links, int rechts);
    };
    
    Tabelle::Tabelle (int l)
    {
    	//laenge=l;
    }
    

    aufruf im Code sollte dann eine Liste mit 6 feldern ergeben

    Tabelle meins(6);
    

    irgendwie muss das doch gehen oder?

    grüßel erzi



  • Das geht mit std::vector , der wie geschaffen ist dafür.
    Hier die Doku: http://en.cppreference.com/w/cpp/container/vector

    #include <vector>
    
    class Tabelle
    {
    private:
    	std::vector<int> Tab;
    public:
    	Tabelle (int l);
    	int TabLaenge();
    	void TabEingeben();
    	void TabAusgeben();
    	void tausche(int* a, int* b);
    	void bubble();
    	void quicksort(int links, int rechts);
    };
    
    Tabelle::Tabelle (int l)
        : Tab(l)
    {
    }
    

    edit: Einrückung korrigiert



  • vielen dank 🙂 das funktioniert sogar gleich auf anhieb 🙂


Log in to reply