zugriff auf fremde klasse innerhalb einer klasse



  • class a
    {
    private:
    	int i;
    public:
    void set_i(int k)
    {
    	i=k;
    }
    int get_i()
    {
    	return i;
    }
    };
    
    class b
    {
    private:
    	int j;
    public:
    void set_i(int k)
    {
    	a::set_i(k);
    }
    int get_i()
    {
    	return a::get_i();
    }
    };
    

    ich wollte eigentlich innerhalb einer klasse ein paar elemente in eine tabelle einfügen. wie würde so ein zugriff funktionieren?



  • Du benötigst schon ein konkretes Objekt vom Typ 'a', um dessen set_i/get_i Methoden aufrufen zu können:

    class a
    {
      // wie oben
    }
    
    class b
    {
    private:
      vector<a> data;
    public:
      void insert_val(a val)
      { data.push_back(val); }
      int get_i(int index)
      { return data[index].get_i(); }
      void set_i(int index,int nval)
      { data[index].set_i(nval); }
    }
    

Anmelden zum Antworten