-
Data: 2022-07-21 21:33:05
Temat: Re: Rynek pracy STM32
Od: heby <h...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 21/07/2022 21:18, Janusz wrote:
>> https://www.modernescpp.com/index.php/dynamic-and-st
atic-polymorphism
>> Dynamiczny polimorfizm bazuje na wołaniu metod wirtualnych.
> czyli calami wywołuje funkcje z rom, tylko wpierw musi wybadać typ
> zmiennej żeby wybadać gdzie skoczyć.
Kod wykonywany przez CPU, pochodzący z kompilacji C++ nie bada żadnych
typów runtime. Zawartości wywołań wirtualnych również są statyczne. W
kodzie nie znajdziesz ani jednej instrukcji warukowej, majacej na celu
"wybadanie typu".
>> Statyczny bazuje na zamrożeniu tych wywołań na etapie kompilacji,
>> przez co metody wirtualne przestają być potrzebne.
> Czyli te same cale co wyżej tylko na stałe przypisane do wywołania bo
> kompilator wie jaki jest typ zmiennej i nic nie musi badać.
W obu wypadkach typy są przypisane na stałe, nie ma badania typów. Typy
nie istnieją w kodzie wynikowym.
Jedyne miejsce, gdzie typy można "badać" to dynamic_cast<> i wymaga to
wywołania jawnie w kodzie źródłowym, dotyczy wąskiego zakresu typów i w
zasadzie nie polega na badaniu typu, tylko porownania pointera na coś
magicznego.
> I tak z grubsza jest guano bo pakowane są wszystkie funkcje w zalezności
> od typu
W szablonach? Nie, tylko uzywany kod, po otymalizacji, która często
kończy się zerową ilością kodu.
Szablony mogą nie genrować kodu, generować bardzo mało i generować
bardzo dużo. Zalezy co chcesz nimi uzyskać.
>, czyli to samo co robi dotychczasowy amator pisząc osobne
> funkcje na kazdy typ zmiennej np: na wysyłanie znaku czy liczby.
Tak, nie, zależy.
Amator piszący osobne funcje i tak jest musi napisać w szablonach jak i
w kodzie nieszablonowym - bo są różne i wymagają innych implementacji.
> Jedyna
> zaleta że w wywołaniu ładnie wygląda po to jedna funkcja np: lcd.print()
A wiec kompletnie dalej tego nie rozumiesz. Nawet przyłapywany co chwile
na kłamstwach, brniesz dalej w ignorancję.
Następne wpisy z tego wątku
- 21.07.22 21:34 heby
- 21.07.22 22:36 Janusz
- 21.07.22 22:42 heby
- 21.07.22 23:56 Janusz
- 22.07.22 09:11 heby
- 22.07.22 09:35 heby
- 22.07.22 12:23 Piotr Gałka
- 22.07.22 18:19 Piotr Gałka
- 22.07.22 18:51 heby
- 25.07.22 15:33 Piotr Gałka
- 25.07.22 16:31 heby
- 25.07.22 18:00 Piotr Gałka
- 25.07.22 18:12 heby
- 25.07.22 20:40 Piotr Gałka
- 25.07.22 21:29 heby
Najnowsze wątki z tej grupy
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- Propagation velocity v/c dla kabli RF
- Jakie natynkowe podwójne gniazdo z bolcem (2P+PE)
- Czujnik nacisku
- Protoków komunikacyjny do urządzenia pomiarowego
- Hiszpania bez pradu
- amperomierz w plusie
- 3G-nadal działa
- Historia pewnego miernika kalibratora
- Ustym 4k Pro i wyświetlacz
- Czemu rozwaliło celę?
- Wojna w portfelu
- Jaki trojfazowy licznik tuya lub podobny?
- Problem z dekoderem adresów
- Intel się wyprzedaje: po 10latach pchnęli pakiet kontrolny Altery za 1/4 kwoty zakupu
Najnowsze wątki
- 2025-05-16 czy Seba naprawdę wróci do macierzy?
- 2025-05-15 coś pustawo u mechaników
- 2025-05-16 Warszawa => IT Data Analyst (obszar Power BI) <=
- 2025-05-16 Warszawa => Senior Backend Developer <=
- 2025-05-16 Warszawa => IT Hardware Specialist - Wsparcie i Konfiguracja <=
- 2025-05-16 Gliwice => Business Development Manager - Network and Network Security
- 2025-05-16 Warszawa => Team Lead Data Engineer (Snowflake) <=
- 2025-05-16 Poznań => Key Account Manager (ERP) <=
- 2025-05-16 Białystok => Team Lead Data Engineer (obszar Snowflake) <=
- 2025-05-16 Warszawa => Senior C++ Developer (analiza numeryczna i modelowanie) <=
- 2025-05-16 Gdynia => Sales Executive / KAM <=
- 2025-05-16 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-05-16 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-05-16 Warszawa => Spedytor Międzynarodowy <=
- 2025-05-16 Białystok => NMS System Administrator <=