Aktywne Wpisy

Dorciqch +154
źródło: temp_file8589038139457099639
Pobierz
wjtk123 +184
Słucham Państwa, komu się Polska nie podoba i chciałby ponownie wziąć udział w narodzinowej loterii? xD
#polska #swiat #mapa #ciekawostki #statystyka
#polska #swiat #mapa #ciekawostki #statystyka
źródło: IMG_9995
Pobierz




Przydałoby się pewnie jakieś #codereview, bo pewnie syf zrobiłem.
@Karol_ek: Akurat to nie to. :P
1. #pragma once jest zepsute, uzyj starego #ifdef #endif
2. uzyj std::function zamiast pointerow na funkcje
3. Zreszta jak uzywasz 3 roznych sposobow liczenia pola, to mozesz zrobic klase bazowa i 3 klasy dziedziczace z odpowiednia implementacja tych sposobow
4. don't use fucking pointers main.cpp#L47 memleak
5. main.cpp#L82 rzuca wyjatek, obsluż go, albo uzyj [i]
@dupasmoka: Wymaganie wykładowcy.
Zdarza się, nie ma jak obsłużyć tego wyjątku w sposób sensowny, jeśli się pojawia, to znaczy, że program znajduje się w nieokreślonym stanie (dwa wątki próbowały modyfikować ten sam wektor). Lepiej pozwolić, by program się wywalił, niż robił
#pragma oncenie jest częścią standardu i zostało odrzucone przez komitet jako niewystarczająco dobrze działające http://stackoverflow.com/a/23699893/2262963std::functionnadaremno, szczególnie w ciasnych pętlach takich jak Twoje. Type erasure jest praktycznie nieoptymalizowalne bez jita. Juƶ prędzej zrób klasę szablonem po typie funktora.Zamiast bawić się w reverse, ustaw odpowiednio min i max w konstruktorze.
W konstruktorze uƶywaj listy inicjalizacyjnej zamiast wrzucać wszystko do ciała funkcji.
Jak na 1. program w C++: zajebiście.
1. Masz błąd w implementacji fn1. Jej wzór nie odpowiada temu co jest w komentarzu, a a to jest być może błąd stylistyczny. To z kolei skłania mnie do refleksji, że te komentarze są zupełnie niepotrzebne, zamiast nich dodałbym
using namespace std;na początku main.cpp - w plikach cpp jest to zupełnie normalne i legalne.2. Odnośnie pętli w funkcji main: lepiej i czytelniej jest
A za resztę uwag dziękuję.
Obiektywność jest tu wciśnięta na siłę, można prościej: https://ideone.com/hFxuu2