Mam taki kod:
class person {
private:
char* firstname;
char* lastname;
int func;
public:
person(int lFname, char* fname, int lLname, char* lname, int func) {
this->firstname = new char[lFname+1];
this->firstname[lFname]='\0';
this->firstname = fname;
this->lastname = new char[lLname+1];
this->lastname[lLname]='\0';
this->lastname = lname;
this->func = func;
}
~person() {
delete[] this->firstname;
delete[] this->lastname;
}
...
};
person* member;
vector<person> membersList;
...
member = new person(l1, cfname, l2, clname, func);
membersList.push_back(*member);
...
i teraz jak chce wypisać osoby na ekranie:
String name;
for(unsigned int i=0; i<membersList.size(); i++) {
member = &membersList[i];
name = member->getFirstname();
name += " ";
name += member->getLastname();
name += " (";
name += member->getFunction();
name += ")";
ListBox1->Items->Add(name);
}
to imie i nazwisko ostatnio dodanej osoby są prawidłowo wyświetlane na ekranie a wcześniejsze osoby maja jakieś dziwne krzaczki w polu firstname i lastname