Cześć.
Ostatnio sporo tworzę na stosie obiektów. Tak sobie założyłem. Jest to miejscami upierdliwe, ale dopuszczam, że coś robie nie do końca tak jak robić się powinno.
Problem: implementacja konstrkuktora często wumusza konstruktory kopiujące i operatory przypisania. Troche mnie to irytuje, bo trzeba dużo pisać :) Wymyśliłem sobie, że zamiast używania konstruktorów z argumentami napiszę statyczną metodę np make, która mi taki obiekt buduje, ale robi to tak:
static Klasa make(int param1, int param2) {
Klasa tmpRes;
tmpRes.setDefault();//czysci pola jeśli jest ich dużo
tmpRes.pole1 = param1;
tmpRes.pole2 = param2;
//czasem sie posiłkuje poniższym polem
tmpRes.valid = true;
}
No i takie coś można spokojnie wrzucać do wektorów, parsowac parserami itd. Bez tego musiałbym napisać konstruktor, konstruktor kopiujący, operator przypisania. Przynajmniej te trzy.
Pytanie: czy to co napisałem jest dobrym kirunkiem czy herezją? Dajcie pls jakiegoś hinta, podzielcie sie doświadczeniem. Pytam, bo chciałbym posiąść tą wiedzę na skróty. Zanim przeczytam wszystkie dostępne info o wzorcach konstrukcyjnych itd.