-
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
- Światłowód między budynkami
- POtrzebny bufor 3.3<>5V, jedonkieruowy, trójstanowy, wąski
- retro
- Bezprzewodowe polączenie Windows z projektorem
- rozklejanie obudowy
- Prośba o identyfikację komponentu
- Smart gniazdko straciło na zasięgu wifi?
- Smart gniazdko straciło zasięg wifi?
- nurtuje mnie
- dziwna sprawa...
- Laptop MSI się nie uruchamia.
- Dobra listwa LED (CRI 90-95, bez migotania)
- masowe programowanie AVR
- Fajny pomysł na monitor z klawiaturą
- Sprzedawanie zaszyfrowanych filmów na płytach Blu-Ray bez kluczy deszyfrujących
Najnowsze wątki
- 2024-11-02 piszę list do św Mikołaja
- 2024-11-01 karta SIM nie działa w konkretnym smartfonie.
- 2024-11-01 Mamy WZROST! O 50% wzrosła ilość kredytów gotówkowych
- 2024-11-01 Warszawa => Expert Recruiter 360 <=
- 2024-11-01 Warszawa => Technical Leader (Java Background) <=
- 2024-11-01 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-11-01 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-01 Warszawa => Programista Dynamics 365 CRM <=
- 2024-11-01 Warszawa => Dynamics 365 CRM Developer <=
- 2024-11-01 Warszawa => Junior Rekruter <=
- 2024-11-01 Chrzanów => Specjalista ds. PR Produktowego <=
- 2024-11-01 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-11-01 Łódź => Frontend Engineer (Three.js) <=
- 2024-11-01 Warszawa => Junior Rekruter <=
- 2024-11-01 Gdańsk => Programista Full Stack .Net <=