funkcja nie ładuje wartości do pola obiektu klasy

0
class baza
{
private:
	string domena;
public:
	void zaladuj(string nazwa)
	{
		domena = nazwa;
	}
	void czytaj();
};

void baza::czytaj()
{
	cout << domena << endl;
}

int main()
{
	char mem[][20] = {"google.com", "4programmers.net", "opera.com"};
	vector<baza> r2010(10);
        baza temp;
	for (int i=0; i<3; i++)
	{
		temp.zaladuj(mem[i]);
		r2010.push_back(temp);
	}

	for (int i=0; i<3; i++)
	{
		r2010[i].czytaj();
	}

	system("pause");
	return 0;
}

funkcja zaladuj(string) nie chce nic załadować od pola prywatnego domena
w efekcie zamiast wyświetlić nazwy domen wyświetla się puste pole, o co chodzi?

0

zobacz co robisz: najpierw deklarujesz wektor 10-elementowy obiektów typu baza, potem 3 razy robisz push_back() z twoimi tekstami. z tego wyniki, że twoje teksty są na pozycjach 10, 11 i 12 w wektorze r2010, a nie 0, 1, 2.

wektor to nie tablica. jeśli zadeklarujesz: vector<baza> r2010;,to powinno zadziałać.
powinno, bo nie testowałem, tak tylko czytam kod

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