abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 03:44 | Nová verze

    Byla vydána nová verze 1.58 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Josephine Pfeiffer. Vypíchnout lze možnost nmtui zobrazit nastavení Wi-Fi jako QR kód nebo podporu CLAT (464XLAT) a tunelů GENEVE (Generic Network Virtualization Encapsulation).

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | IT novinky

    Zákaz používání mobilních telefonů a dalších elektronických komunikačních zařízení ve školách, jehož uzákonění navrhli jako poslanci premiér Andrej Babiš (ANO) a ministr školství Robert Plaga (za ANO), dnes podle očekávání vláda podpořila. Novinářům to oznámil Babiš, podle Plagy byla podpora kabinetu jednomyslná. Účinnost předkladatelé navrhují od 1. září 2027. Podle opoziční ODS je plošný zákaz líbivé populistické opatření namířené proti digitální gramotnosti dětí.

    Ladislav Hagara | Komentářů: 2
    včera 19:33 | Bezpečnostní upozornění

    Vládní CERT upozorňuje (𝕏) na zranitelnost ve WordPress Core: CVE-2026-63030 s přezdívkou wp2shell. Zranitelnost typu vzdálené spuštění kódu (RCE) bez nutnosti autentizace umožňuje útočníkovi spouštět libovolný kód prostřednictvím endpointu WordPress REST API Batch. Ke zneužití není vyžadován platný uživatelský účet ani interakce uživatele. Úspěšné zneužití může vést ke kompletnímu kompromitování webové stránky a souvisejících dat. Zranitelnost postihuje verze WordPress 6.9.0 až 6.9.4 a 7.0.0 až 7.0.1.

    Ladislav Hagara | Komentářů: 0
    včera 18:11 | IT novinky

    Evropská komise (EK) vyměřila čínskému internetovému prodejci AliExpress pokutu 550 milionů eur (13,3 miliardy korun) za porušení povinností vyplývajících z nařízení o digitálních službách (DSA). Platforma podle EK řádně neposuzovala a neomezovala rizika související s prodejem nelegálních, nebezpečných nebo padělaných výrobků na svém internetovém tržišti. Komise zároveň firmě nařídila přijmout nápravná opatření. Podle AliExpressu je pokuta nepřiměřená.

    Ladislav Hagara | Komentářů: 8
    včera 12:22 | Nová verze

    Ruffle, tj. open source emulátor Flash Playeru napsaný v Rustu, byl vydán ve verzi 0.4.0. Ke stažení je také na Flathubu. Přímo ve webovém prohlížeči lze vyzkoušet online dema nebo vlastní swf soubory.

    Ladislav Hagara | Komentářů: 5
    18.7. 14:22 | Nová verze

    HollowByte je zranitelnost typu Denial of Service (DoS) v kryptografické knihovně OpenSSL. Útočník může odesíláním škodlivého payloadu o velikosti pouhých 11 bajtů zaplnit paměť serveru. OpenSSL před ověřením dat vyhradí nepřiměřený blok paměti (až 131 KB). Server pak čeká na data, která nepřišla. Zranitelnost je opravena ve verzích OpenSSL 4.0.1, 3.6.3, 3.5.7, 3.4.6 a 3.0.21.

    Ladislav Hagara | Komentářů: 0
    18.7. 13:44 | Komunita

    Ve španělské A Coruñě probíhá GUADEC 2026, tj. letošní konference vývojářů a uživatelů desktopového prostředí GNOME. Videozáznamy přednášek jsou k dispozici na YouTube.

    Ladislav Hagara | Komentářů: 2
    18.7. 13:22 | Komunita

    Společnost Collabora ve spolupráci s Valve vyvíjí Holo Core, tj. port Arch Linuxu pro ARM64 procesory (AArch64), který bude pohánět VR headset Steam Frame. Pro testování Arch Linuxu pro AArch64 jsou k dispozici binární balíčky, zdrojové kódy i kontejner pro Docker nebo Podman.

    Ladislav Hagara | Komentářů: 1
    18.7. 13:00 | IT novinky

    Mikroprocesor Zilog Z80 byl oficiálně uveden na trh před 50 lety, tj. v červenci 1976. Výroba mikroprocesoru skončila v roce 2024.

    Ladislav Hagara | Komentářů: 2
    18.7. 02:55 | Bezpečnostní upozornění

    Výzkumníci ze společnosti ESET objevili 11 zapomenutých UEFI shim zavaděčů, které byly podepsány společností Microsoft, a které umožňují útočníkům obejít ochranu UEFI Secure Boot na většině zařízení. Microsoft je zneplatnil (přidal jejich hash do databáze dbx) v rámci aktualizace Patch Tuesday dne 9. června 2026. Uživatelé Linuxu mohou databází aktualizovat pomocí LVFS. Ověřit zneplatnění zavaděčů lze pomocí skriptu uefi-dbx-audit. Jedná se o CVE-2026-8863 a CVE-2026-10797.

    Ladislav Hagara | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (30%)
     (5%)
     (6%)
     (2%)
     (15%)
     (24%)
    Celkem 2184 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Jak jsem vyrostl z C++

    18.11.2005 00:11 | Přečteno: 1854× | Plané filozofování | poslední úprava: 19.11.2005 18:02

    Brouzdal jsem na disku a narazil na jeden svůj starý projekt. Něco přes 10k řádek v C++ a něco málo v Object Pascalu.

    Jako adolescent jsem C++ doslova miloval. Tehdy jsem si to užíval, mohl jsem dělat OOP kouzla, přetěžovat operátory a třeba i použít virtuální vícenásobnou dědičnost. A přitom dělat ďábelské nízkoúrovňové kousky. Třeba jsem si udělal lehkotonážní skoroimplementaci COM, abych se vyhnul práci s windows registry. Prostě se nějak posílal ukazatel na tabulku virtuálních metod, detaily jsem dávno zapomněl. Protože klientská aplikace nemohla uvolnit objekt, který získala z DLL knihovny (každý modul má vlastní heap), musela se zavolat metoda Delete, kterou objekt spáchal elegantní sebevraždu.

    void __stdcall xcfgM::Delete()
    {
      delete this;
    }
    

    Používal jsem taky jednu krásnou fintu, kterou bych se ale chlubit neměl. Někde jsem potřeboval, aby funkce vracela celé číslo s nějakým chybovým kódem. Nechtělo se mi deklarovat k těmto chybovým kódům konstanty (např. const int ERROR_OPENING = 5;), tak jsem používal čtyřznakové identifikátory (uzavřené do apostrofů), které šly přiřadit do 32bitového integeru.

    int result = 'cnof'; // cannot open file
    

    Problém C++ byl, že všelijakým triků se člověk nevyhnul i kdyby chtěl. Třeba přinutit k bezešvé spolupráci moduly překládané různými překladači vyžadovalo občas invenci.

    /* Some compilers tried to set enum types size to 1 byte, this constant _
       is defined to make them set this size to 4 bytes.
    */
    const int _32_BIT_ALIGMENT = 2147483647; // = 2**31-1
    ////////////////////////////////////////////////////////////////////////
    enum TInitState   {
                        istInited    = 0,
                        istNotInited = 1,
                        istDefault   = 2,
                        istNone      = 3,
    
                        ist_32_bit_aligment =  _32_BIT_ALIGMENT
                       };
    

    Potom jsem ale z C++ vyrostl. Oblíbil jsem si bezpečné, silně typované jazyky jako Ada, Java a C#. To jsou nástroje pro zralé muže:-).

    Samozřejmě vím, že na spoustu projektů je C++ z různých důvodů nejlepší volba. Tak ať mě tu někdo nepranýřuje, že firewall se v Javě píše blbě, já to vím. (Ale v Adě už by to šlo:-)

    A z čeho jste vyrostli vy?

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    18.11.2005 00:53 iZaak | skóre: 2 | blog: ECHO_Echo_echo_cho
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Asi zacinam teprve dospivat a tezka leta digitalni puberty me teprve cekaji, ale ted se v C++ zacinam vyzivat :) Odrostl jsem PHP, povazujme ho za muj matersky jazyk ve kterem jsem poprve zazvatlal class;)
    Vím, že nic nevím... Ale pracuju na tom.
    18.11.2005 01:00 paskma | skóre: 13 | blog: Paskmův blog
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    No jasné. Já před C++ taky žvatlal v {Q,Visual}Basicu a {Turbo,Object}Pascalu:-). PHP bylo tehdy ještě nefrčelo.
    18.11.2005 19:23 johniez | skóre: 17 | blog: xyz | Praha
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Jak lze v PHP smysluplne vyuzit objekty? Me tam prijdou celkem k nicemu, jen ze jsou "moderni"..
    18.11.2005 23:14 Ritchie | skóre: 27 | blog: Ritchie's | Berlin
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    To poznáte, když píšete jen o trochu rozsáhlejší projekt. Já si tvoření stránek v PHP bez objektů neumím představit.
    wake avatar 18.11.2005 01:24 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    S blahosklonnou přezíravostí si dovolím pochlubit se vyrustkem z přesvědčení, že existuje něco jako "nástroj pro pravé muženy". V AccessBasicu se dá napsat elegantní a funkční "radost používat"; v C#, Adě, Pythonu i ObjectiveC těžkopádná a nefunkční "ty počítače jsou nanic".

    Vlastně ano. Existuje nástroj pro pravé muženy. Správně. Mozek.
    Tento příspěvek má hlavičku i patičku!
    18.11.2005 03:16 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Prave programujem AVL strom, ktory vo vrcholoch uklada stringy. Vlozenie 4 000 000 zaznamov trvalo cca 62s. Ked som to prerobil, aby nepouzival typ string (z stdlib), ale C-vsky char *, tak to iste stihne za 41s. Znacne to otriaslo mojou doverou v C++. Navyse prave zistujem, ze (asi kvoli zarovnavaniu pamate, alebo bohviecomu) je pamatova narocnost vytvoreneho stromu rovnako velka, bez ohladu na to, ci sizeof(Vrchol)==20 alebo sizeof(Vrchol)==16. Ked som proste odstranil z Vrchola ukazovatela na predka, tak sa pamatova narocnost nezmenila.
    If you hold a Unix shell up to your ear, you can you hear the C.
    18.11.2005 11:44 paskma | skóre: 13 | blog: Paskmův blog
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Na to se používá návrhový vzor "muší váha". Malé objekty nealokovat dynamicky, ale mít je třeba někde v poli.
    18.11.2005 12:07 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    No, to mi je jasne. Prave studujem alokatory, aby som ku kazdym 16 bytom nepridaval dalsie, ktore si tam ulozi new/malloc a cele alokovanie urychlil obcasnou hromadnou alokaciou a potom uz iba pridelovanim. Ale stale mi nie je jasne, preco po zmenseni typu, sa nezmeni miesto, ktore zabera v pamati. Doteraz som si myslel, ze pamat je zarovnavana na nasobky 4B, co splna aj 16B.
    If you hold a Unix shell up to your ear, you can you hear the C.
    18.11.2005 12:56 Pepin
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    To nastavujes u prekladace, nejcasteji (u prekladacu ktere znam) je to zarovnano na 8 byte, takze to neni obecne treba na nasobky 4B, ikdyz pravda u 32-bit compu by to na ty 4 mozna clovek cekal.
    18.11.2005 08:51 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Vyrostl jsem z QBasicu a Visual Basicu, ale na QBasic stale nostalgicky vzpominam, zatimco proklinam C++, ktere jsem si tenhle semestr zapsal... Asi neco na tech posmesnych hlaskach kolegu Javistu bude :-(
    θηριον ειμι
    18.11.2005 09:01 janosh | skóre: 8 | blog: janosh_blog | Třebíč
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    ano je :-)
    Linux is like teepee, no windows, no gates, apache inside!
    Rezza avatar 18.11.2005 09:14 Rezza | skóre: 25 | blog: rezza | Brno
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    A co teprve kolegu SmallTalkeru!
    18.11.2005 11:14 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    No jo, každý student C++ by si měl povinně na začátku studia osahat Smalltalk/X, aby získal motivaci do dalšího studia C++. :-D
    18.11.2005 10:37 MyLaN
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Ja vyrost a zakrnel u FORTRANu (77 samozrejme). Ted sem se snazil neco rochnit v c, ale nejdriv si v hlavne musim program "prkompilovat" do fortranu a pak to teprv chapu. Slozite, neefektivni, obcas pekne nasiraci ale beha to. RETURN END
    18.11.2005 12:27 honza
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    opravdovi programatori pouzivaji fortran ...
    18.11.2005 15:27 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Opravdoví programátoři dokáží psát Fortran v jakémkoliv jazyce
    Quando omni flunkus moritati
    18.11.2005 11:57 Trained.Monkey
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Ja vyrostl na paskalu. Pro XT tehdy nic lepsiho nebylo a hlavne mel ceskou dokumentaci. Sranda byla kdyz jsem pozdeji na 386 25MHZ/4 MB RAM pod windows 3.11 rozchodil Delphi 1.
    Luboš Doležel (Doli) avatar 18.11.2005 13:48 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    C++ je docela v pohodě...mě se líbí, že můžu dělat prasečiny jaký chci, ale na druhou stranu je tam po ruce třeba dynamic_cast.

    Nejsem si jist, jestli musíš dělat tyhle hacky s velikostí enum konstant - co třeba zkusit 0UL nebo 1UL? Potom to bude sizeof(unsigned long)...
    18.11.2005 14:28 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Takové přetěžování operátorů zabaví nepochybně každého :-)
    Copak toho není dost?
    18.11.2005 15:40 paskma | skóre: 13 | blog: Paskmův blog
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Vidíš, to je hezké řešení. Ale stejně není jisté, jestli by to ten překladač nezoptimalizoval. To, co jsem tam prskl já bylo to první, co mě napadlo, protože to asi bylo po nějakých hodinách ladění.
    David Watzke avatar 18.11.2005 13:53 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    LOL a já sotva napíšu script v Bashi. :-(
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    18.11.2005 13:56 ZS-Man | skóre: 31 | blog: B26
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Jeste na zakladce jsem busil Basic do sveho supermoderniho ATARI 800XE. Na stredni jsem presel na C a to me tak 5 let bavilo. Pak jsem s tim prestal, nebyl cas. Ted nedavno jsem se bavil s byvalym spoluzakem, zavspominali jsme na svoje progranatorsky uspechy a ze by jsme zase mohli neco skusit. Nejakou klikaci adventurku, jen tak na oziveni nasich zkusenosti. Vyhrabal jsem nejaky stary zdrojaky, jako ze kouknu jak to tenkrat vlastne bylo. A vysledek byl predpokladatelny: Uz jsem vyrostl z jakehokoliv programovani :-) .
    18.11.2005 15:06 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Adventurku v C? No raději bych použil Python/Ruby + SDL. Ono starat se o alokace paměti a ručně si psát všechny složitější struktury má možná svoje kouzlo, ale zabere to až nechutně moc času
    When your hammer is C++, everything begins to look like a thumb.
    18.11.2005 16:08 Pepin
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Ja sem z C++ nikdy nevyrost (za devet let), v C# delam uz tri roky v praci, nijak moc mi nevadi, ale nikdy mi nejak neprirost, ze bych ho mel radsi nez C++ , to uz mam radci Delphi (5 let), uz treba proto, ze generujou nativni kod a nebezi to na frameworku (kdyz predpokladam, ze je nepouziji jako Delphi .NET, ale ciste VCL). Ten .NET mi prijde v nekterejch vecech fakt nestastnej, napr. designer kterej si obcas vymaze co chce z "InitializeComponent" a dalsi problemy se zobrazovanim a naslednim mazanim adresare "obj" (obcas me fakt se*e), nebo vzajemny blokovani se dvou devenv-u, kdyz v jednom delam dll-ko a druhy na nej ma referenci, protoze z nej sosa rozhrani atd. Hlavne primarne delam gamesy a tam je pro me jakakoli ztrata vykonu nepripustna a krom toho C++ jakozto hybridni se svejma globalnima fcema a vsim mi obcas sedi vic nez C# kterej je pure OOP a vnucuje developerovi z globalni funkce udelat statickyho membera nakyho classu, uznavam ale ze pro databaze ci ASP je ten .NET dobrej. Jinak uz se tesim na studio 2005 doufam, ze mi aspon spravjej designera, tim by mi udali radost.
    12.12.2005 17:00 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    A tu o orlovi, co si myslel, že je slepice, znáte? :-D ;-)
    12.12.2005 17:01 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Jak jsem vyrostl z C++
    Jéje, to měla být reakce na „18.11.2005 16:08 Pepin“... :-D

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.