Re: Ukazka C++ pro děti

Pavel Brychta pavel.brychta na duhasys.eu
Čtvrtek Duben 1 08:48:36 CEST 2021


Ano, mnoho jazyků má nativní typ string, akorát že není string jako 
string a Unicode encoded string do toho hodil těmto jazykům vidle - viz 
třeba Python 2.X stringy oproti Python 3.X stringy... Prostě problémy 
najdu všude, pokud je hledám.

Pavel Brychta

Dne 01. 04. 21 v 8:42 Jiří Nesvacil napsal(a):
> String je taková vyjímka. Mnoho jazyků má string za nativní typ tj. 
> typ plně podporovaný jazykem. V C C++ nic takového není. Tak se na 
> udělalo přetížení operatrů- Obecně přepisování operátorů se úmyslně 
> vyhýbá kde jaký jazyk. I ten Pascal měl stringy lépe než je to C,C++. 
> Stringy v C,C++ chápu jako jednu z nejhorších věcí. Když by na to byl 
> aspoň vyčleněn typ. Takto se typ char používal jako byte a je z toho 
> problém respektive další nečekané věci.
>
> Jirka
>
> Jirka
>
> Dne 01.04.2021 v 8:31 Pavel Brychta napsal(a):
>> Nemyslím si, že přetížení operátorů je nešvar a že přepsání přes 
>> metody je "vždycky" čitelnější - například zrovna Vámi zmiňovaná 
>> třída String - díky přetíženému operátoru [] můžete zapsat char c = 
>> s[5]; , což považuji za přehlednější zápis než char c = s.getChar(5); 
>> Ale možná to je jen věc vkusu...
>>
>> Pavel Brychta
>>
>> Dne 01. 04. 21 v 8:20 Jiří Nesvacil napsal(a):
>>>
>>> Templates jsou užitečné. Přetížení operátorů chápu za nešvar. Pokud 
>>> je na tom něco založeno, tak Ano. Vždycky se to dá přepsat přes 
>>> metodu Add a je to čitelnější.
>>>
>>> Obecně co je v novějším jazyku podpořeno je automatická likvidace 
>>> paměti např. ten string, který se jinak v C špatně dělá. Pro 
>>> embedded je to ovšem skoro špatně, tak si to chcete spíš více 
>>> hlídat, teda pokud nemáte hodně paměti ... .
>>>
>>> Pokud se ten kód má udržovat nebo myslet na to, že se přepíše i do 
>>> jiného jazyku, tak se zkoumá, která vlastnost jazyku se dá využít a 
>>> přenésti jinam.
>>>
>>> Jirka
>>>
>>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>


Další informace o konferenci Hw-list