#include <iostream>
#include <string>
#include <vector>
#include <memory>
class Osoba
{
public:
Osoba(std::string const& imie, std::string const& nazwisko, int wiek) :
imie_(imie), nazwisko_(nazwisko), wiek_(wiek) { std::cout << "Osoba::Osoba\n"; }
~Osoba() { std::cout << "Osoba::~Osoba\n"; }
void wypisz() { std::cout << "Imie: " << imie_ << ", Nazwisko: "
<< nazwisko_ << ", Wiek: " << wiek_ << std::endl; }
private:
std::string imie_;
std::string nazwisko_;
int wiek_;
};
int main()
{
std::vector<std::unique_ptr<Osoba> > osoby;
std::cout << "Ile osób.";
int ile;
std::cin >> ile;
for(int i = 0 ; i < ile ; ++i) {
// tutaj możesz sobie cinować dane i podać je do konstruktora.
osoby.emplace_back(new Osoba("Franek", "Kowalski", 17));
}
std::cout << "Wprowadzono:\n";
for(auto const& e : osoby)
e->wypisz();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8bWVtb3J5PgoKY2xhc3MgT3NvYmEKewpwdWJsaWM6CglPc29iYShzdGQ6OnN0cmluZyBjb25zdCYgaW1pZSwgc3RkOjpzdHJpbmcgY29uc3QmIG5hendpc2tvLCBpbnQgd2llaykgOgoJCWltaWVfKGltaWUpLCBuYXp3aXNrb18obmF6d2lza28pLCB3aWVrXyh3aWVrKSB7IHN0ZDo6Y291dCA8PCAiT3NvYmE6Ok9zb2JhXG4iOyB9CgoJfk9zb2JhKCkgeyBzdGQ6OmNvdXQgPDwgIk9zb2JhOjp+T3NvYmFcbiI7IH0KCgl2b2lkIHd5cGlzeigpIHsgc3RkOjpjb3V0IDw8ICJJbWllOiAiIDw8IGltaWVfIDw8ICIsIE5hendpc2tvOiAiCgkJCQkJCQkgIDw8IG5hendpc2tvXyA8PCAiLCBXaWVrOiAiIDw8IHdpZWtfIDw8IHN0ZDo6ZW5kbDsgfQoKcHJpdmF0ZToKCXN0ZDo6c3RyaW5nIGltaWVfOwoKCXN0ZDo6c3RyaW5nIG5hendpc2tvXzsKCglpbnQgd2lla187Cn07CgppbnQgbWFpbigpCnsKCXN0ZDo6dmVjdG9yPHN0ZDo6dW5pcXVlX3B0cjxPc29iYT4gPiBvc29ieTsKCXN0ZDo6Y291dCA8PCAiSWxlIG9zw7NiLiI7CglpbnQgaWxlOwoJc3RkOjpjaW4gPj4gaWxlOwoJZm9yKGludCBpID0gMCA7IGkgPCBpbGUgOyArK2kpIHsKCQkvLyB0dXRhaiBtb8W8ZXN6IHNvYmllIGNpbm93YcSHIGRhbmUgaSBwb2RhxIcgamUgZG8ga29uc3RydWt0b3JhLgoJCW9zb2J5LmVtcGxhY2VfYmFjayhuZXcgT3NvYmEoIkZyYW5layIsICJLb3dhbHNraSIsIDE3KSk7Cgl9CgoJc3RkOjpjb3V0IDw8ICJXcHJvd2Fkem9ubzpcbiI7Cglmb3IoYXV0byBjb25zdCYgZSA6IG9zb2J5KQoJCWUtPnd5cGlzeigpOwoKCXJldHVybiAwOwp9Cg==
Ile osób.Osoba::Osoba
Osoba::Osoba
Osoba::Osoba
Osoba::Osoba
Osoba::Osoba
Wprowadzono:
Imie: Franek, Nazwisko: Kowalski, Wiek: 17
Imie: Franek, Nazwisko: Kowalski, Wiek: 17
Imie: Franek, Nazwisko: Kowalski, Wiek: 17
Imie: Franek, Nazwisko: Kowalski, Wiek: 17
Imie: Franek, Nazwisko: Kowalski, Wiek: 17
Osoba::~Osoba
Osoba::~Osoba
Osoba::~Osoba
Osoba::~Osoba
Osoba::~Osoba