-
Data: 2018-11-16 16:48:17
Temat: Re: Niezmienniki pętli
Od: s...@g...com szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> Czy w związku z tym zagadnienie niezmienników jest niepotrzebne? A może nadal jest
potrzebne i coś innego je zastępuje?
1. Wiedziałem co to jest.
2. Stosuję
3. Sam też stosujesz
Najprostrze zastosowanie:
QList<int> lList = {0, 1, 2, 3, 4, 5};
for(int i(0); i < lList.size(); ++i)
// tu robisz coś z lList
W tej pętli niezmiennikiem sprawdzanym przed wejściem w pętlę i po kazdej iteracji
jest:
i < lList.size()
Nieco bardziej ogólne jest:
QList<int> lList = {0, 1, 2, 3, 4, 5};
for(int& lItem : lList)
// tu robisz coś z lItem
W tym przypadku niezmiennikiem (ukrytym) jest fakt iteracji po wszystkich elementach
listy.
4. Zazwyczaj dalszych niezmienników w pętli nie sprawdzam. Głównie ze względu na 2
wady:
4.1. Puchnięcie i zaciemnianie kodu.
4.2. Spowolnienie programu.
5. Bardzo często sprawdzam parametry wejściowe funkcji (wierzę i stosuję coś w
rodzaju programowania kontraktowego).
5.1. Wierzę w try, throw, catch (wyjątki obowiązkowo dziedziczone po std::exception z
opisem i kodem błędu).
5.2. Nie wierzę w i nie cierpię Assert (to tak jak by bez ostrzeżenia uderzyć kogoś w
twarz bez dalszego komentarza).
5.3. Toleruję wartości zwracane (jako informacje o błędach) i brak standaryzacji w
dostępie do opisów błędów w Qt.
Następne wpisy z tego wątku
- 16.11.18 16:50 s...@g...com
- 16.11.18 17:18 AK
- 16.11.18 20:14 Queequeg
- 16.11.18 20:40 s...@g...com
- 16.11.18 20:51 g...@g...com
- 16.11.18 21:05 Queequeg
- 16.11.18 23:51 Maciej Sobczak
- 16.11.18 23:55 Maciej Sobczak
- 17.11.18 14:58 Sebastian Biały
- 17.11.18 16:59 s...@g...com
- 18.11.18 00:10 Maciej Sobczak
- 18.11.18 01:02 Queequeg
- 18.11.18 09:58 AK
- 18.11.18 10:10 fir
- 18.11.18 10:28 fir
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-03 Trybik
- 2025-07-04 Renault Symbioz
- 2025-07-04 Architektura IIIRP: Wyjątkowa, a prymitywniejsza niż stodoła pod zaborami
- 2025-07-04 Warszawa => International Freight Forwarder <=
- 2025-07-04 Wrocław => SAP ABAP Developer <=
- 2025-07-04 Warszawa => Mid/Senior IT Recruiter <=
- 2025-07-04 Białystok => Kotlin Developer <=
- 2025-07-04 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-07-04 Warszawa => Specjalista wsparcia IT - analiza techniczna sprzętu IT <
- 2025-07-04 Zakrzewo => Konsultant SAP HCM <=
- 2025-07-04 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-04 Szczecin => Key Account Manager IT <=
- 2025-07-04 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-04 Warszawa => Technique IT - Hardware Configuration and Support <=
- 2025-07-04 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=