Wskaźnik na pole innej klasy

0

Witam.
Może zacznę od kodu

#include <iostream>
using namespace std;
#define MAX_A_OBJECTS 3
class A{

public:
	int var;
	A(){}
};

class B{
public:
	int amount;
	int *vars[MAX_A_OBJECTS];
	B(){
		amount =0;
	}
	void add(A obj){
		vars[amount]=&obj.var;
		amount++;
	}
};


int main(){
	A obja;
	A objb;
	obja.var=2;
	objb.var=4;
	B Bobj;
	Bobj.add(obja);
	Bobj.add(objb);
	obja.var=5;
	///////
	cout<<*Bobj.vars[0];
	return 0;

} 

Chciałbym oczywiście aby cout<<Bobj.vars[0]; wyswietlilo wartość Obiektu obja, obecną a nie którą miała w momencie dodania do obiektu klasy B

Ok Zapomniałem przesłać przez referencje

0

uno to powinieneś właśnie przekazać obiekt klasy A przez referencje, a dwa, tablica vars powinna byc tablicą wskaźników na obiekty klasy A czyi A *vars[MAX];

1 użytkowników online, w tym zalogowanych: 0, gości: 1