eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaAVR po latachRe: AVR po latach
  • Data: 2021-11-18 21:47:12
    Temat: Re: AVR po latach
    Od: Mateusz Viste <m...@x...invalid> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    2021-11-18 o 21:02 +0100, heby napisał:
    > Wylatujesz za drzwi nie tylko z kopniakiem, ale jeszcze z wilczym
    > biletem na pracę w IT.

    Przypomnę, że pisałeś wcześniej że "w C nie da się tego zrobić". Teraz
    ci po prostu łyso. :-)

    > Wlasnie napisałeś kiepski, ale emulator RAII. I po co było bredzić o
    > goto?

    goto ma swoje niszowe zastosowania. To, co dziś nazywa się "RAII"
    istniało przed C++ i wykorzystywało właśnie goto. Zresztą nie tylko ja
    o tym bredzę:
    https://www.kernel.org/doc/Documentation/process/cod
    ing-style.rst

    "The goto statement comes in handy when a function exits from multiple
    locations and some common work such as cleanup has to be done. If
    there is no cleanup needed then just return directly."

    > Poważniejszy przykład mogę podrzucić jeśli chcesz, ale czy aby na
    > pewno pojmiesz o co chodzi? Sprawdźmy jakiś trywialny:
    >
    > char value = cast_with_range_check< char >( intValue );
    >
    > W kodzie produkcyjnym nic się nie zmienia, w kodzie dla unit testów
    > masz tam w środku zaawansowane sprawdzanie czy wartość mieści się w
    > zakresie typu.

    Ciekawa konstrukcja. Nie mam pewności, czy to w praktyce mogłoby być mi
    użyteczne, bo jeśli castuję większe do mniejszego to obwarowuję
    operację stosownymi asercjami. Czy w takiej sytuacji ten
    cast_with_range_check<> ma jakieś zalety? Pytam szczerze i bez przekąsu.

    > Ja tu bronie jakiejś idei? Robisz gówniany kod na goto, który
    > świadczy o zerowej wiedzy z zakresu bezpieczeństwa kodu i to w imię
    > "Łojezu, nie wolno używać C++, bo przyjdzie babajaga i zje!" i to ja
    > czegoś zaciekle bronię? Żartujesz?

    Tak, bronisz. Podałeś tezę pt. "C++ najlepszy do programowania w
    embedded" i uargumentowałeś ją kiepskim przykładem. Zapytałem o lepszy.
    I zaczęło się.

    > To co, piszesz to zabezpieczneie przed podaniem złej flagi do uartu,
    > w C?

    Ja zupełnie tego nie potrzebuję. To ty podałeś te flagi jako kolejny
    przykład wyższości C++ "w embedded"... Ale okazało się niestety, że to
    przykład tylko wirtualny.


    Mateusz

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: