-
Data: 2012-07-05 16:08:54
Temat: Re: Co może robić konstruktor i dlaczego nie?
Od: "slawek" <h...@s...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Użytkownik "Roman W" napisał w wiadomości grup
dyskusyjnych:bd373b26-93c8-4d46-b671-a240746af7af@go
oglegroups.com...
>1. przygotuj zmienne lokalne (np. rozpakuj dane wejsciowe, ustaw
>odpowiednie opcje)
>2. wykonaj potrzebna operacje
>3. posprzataj po sobie
To da się zrobić np. tak
class Foo
{
public:
Foo()
{
prepare_local_variables();
execute_necessary_operations();
}
private:
prepare_local_variables() ... // etc.
};
Oczywiście, nieco przydługawo, jednak ważne jest, iż na zewnątrz widać tylko
Foo() oraz domyślny destruktor (ew. niedomyślny). Oczywiście
prepare_local_variables() może być "wewnętrznym standardem de facto", można
rozbić to na drobniejsze fragmenty, można execute_necessary_operations()
robić jako:
void Foo::execute_necessary_operations()
{
execute_internal_operations();
execute_external_operations();
while( execute_additional_operations() != NO_MORE_BEER_OR_OPS)
execute_run(get_param(those->this->where->there));
}
Zachowana jest jednak zasadnicza "filozofia" RAII - utworzenie obiektu
uruchamia proces (rozumiany jako "zasób") - skasowanie obiektu proces
zatrzymuje. Niepotrzebny jest dodatkowy run(), który byłby widoczny na
zewnątrz i w dodatku wymagał wzmianki dla użytkownika (użytkownika klasy) w
dokumentacji.
Innymi słowy - wsiadasz do samochodu na miejsce kierowcy i samochód ciebie
rozpoznaje sam, sprawdza czy jesteś właścicielem, czy masz prawo jazdy, czy
jesteś trzeźwy itd. Nawet nie musisz wiedzieć co to jest np. alkoholomat czy
kluczyki.
Następne wpisy z tego wątku
- 05.07.12 16:27 slawek
- 05.07.12 15:49 slawek
- 05.07.12 16:24 slawek
- 05.07.12 16:18 slawek
- 05.07.12 16:52 AK
- 05.07.12 18:59 Michoo
- 05.07.12 19:06 Michoo
- 05.07.12 21:01 slawek
- 05.07.12 22:34 Edek Pienkowski
- 05.07.12 23:30 slawek
- 05.07.12 23:45 Edek Pienkowski
- 05.07.12 09:37 Edek Pienkowski
- 06.07.12 08:17 slawek
- 06.07.12 09:09 Edek Pienkowski
- 06.07.12 10:59 AK
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-14 granice
- 2025-07-14 Awaria VM?
- 2025-07-14 Gdańsk => Programista Kotlin <=
- 2025-07-14 Warszawa => Junior Rekruter <=
- 2025-07-14 Warszawa => Specjalista rekrutacji IT <=
- 2025-07-14 Wkłady do zniczy...
- 2025-07-14 Warszawa => Specjalista ds. Sprzętu Komputerowego <=
- 2025-07-14 Re: PO chroniło i chroni policyjnych bandziorów [zawiasy za katowanie obywatela (Poznań czerwiec 2012)]
- 2025-07-14 Warszawa => International Freight Forwarder <=
- 2025-07-14 Warszawa => Recruiter 360 <=
- 2025-07-14 Re: Rz?Âd ZAKAZUJE magazyn?Â?w energii ?!! Nowe prawo od 14 lipca to SZOK! ??Â
- 2025-07-14 Warszawa => Sales Assistant <=
- 2025-07-13 Fałszywe alerty
- 2025-07-12 dlaczego gadacie z tym debilem
- 2025-07-13 Unia Europejska przygotowuje nowy podatek