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í
×
    včera 16:00 | Nová verze

    Byla vydána nová verze 2025.4 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.

    Ladislav Hagara | Komentářů: 1
    včera 12:44 | IT novinky

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) zveřejnil Národní politiku koordinovaného zveřejňování zranitelností (pdf), jejímž cílem je nejen zvyšování bezpečnosti produktů informačních a komunikačních technologií (ICT), ale také ochrana objevitelů zranitelností před negativními právními dopady. Součástí je rovněž vytvoření „koordinátora pro účely CVD“, jímž je podle nového zákona o kybernetické … více »

    Ladislav Hagara | Komentářů: 6
    včera 04:33 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.12. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    včera 03:55 | Nová verze

    Společnost System76 vydala Pop!_OS 24.04 LTS s desktopovým prostředím COSMIC. Videoukázky na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 03:11 | Nová verze

    Byla vydána verze 1.92.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 01:33 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2024. Oceněni byli Andy Wingo, jeden ze správců GNU Guile, Alx Sa za příspěvky do Gimpu a Govdirectory jako společensky prospěšný projekt.

    |🇵🇸 | Komentářů: 3
    11.12. 18:55 | Nová verze

    Bylo vydáno Eclipse IDE 2025-12 aneb Eclipse 4.38. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    11.12. 17:44 | Nová verze

    U příležitosti oslav osmi let prací na debianím balíčku vyšlo GPXSee 15.6. Nová verze přináší především podporu pro geotagované MP4 soubory, včetně GoPro videí. Kdo nechce čekat, až nová verze dorazí do jeho distribuce, nalezne zdrojové kódy na GitHubu.

    Martin Tůma | Komentářů: 15
    11.12. 09:22 | Nová verze

    Monado, tj. multiplatformní open source implementace standardu OpenXR specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro virtuální realitu (VR) a rozšířenou realitu (AR), bylo vydáno ve verzi 25.1.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    11.12. 02:44 | Nová verze

    Byla vydána listopadová aktualizace aneb nová verze 1.107 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.107 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (17%)
     (22%)
     (15%)
     (24%)
     (15%)
     (17%)
    Celkem 459 hlasů
     Komentářů: 19, poslední 11.12. 20:04
    Rozcestník

    Dotaz: const v c++

    16.12.2006 17:38 qwerty | skóre: 9
    const v c++
    Přečteno: 421×
    Ahoj,

    chtel jsem se zeptat, jaktoze

    char* s = (const char*)"retez";

    nehodi zadnou chybu, kdezto

    char* s1 = "retez"; char* s2 = (const char*)s1;

    hodi chybu invalid conversion from 'const char*' to 'char*'

    Kompiloval jsem to v g++ 4.1.1 s parametrem -Wall. Chova se to stejne i kdyz je prirazeni toho retezce udelano v normalnim behovem prirazeni a ne v inicializaci.

    V c kompilovanem s gcc se to chova normalne, obe dve veci hodi warning: initialization discards qualifiers from pointer target type.

    Diky za odpoved

    Odpovědi

    16.12.2006 18:01 qk | skóre: 15 | blog: qk_develop
    Rozbalit Rozbalit vše Re: const v c++
    protoze char* s2 = (const char*)s1; pretypujes s1 na const char* a pak to priradis do char* coz znamena ze v promenne s kterou muzes manipulovat davas neco cos oznacil jako nemenne (konstantni). Ona i ta prvni deklarace by to mela hodit, ale nejspise protoze se to casto pouziva v zdrojacich tak se to hlaseni neukazuje, ale melo by byt.
    16.12.2006 18:40 qwerty | skóre: 9
    Rozbalit Rozbalit vše Re: const v c++
    Jasne chapu jak funguje pretypovani, slo mi ciste jen o to proc ten prvni prikaz nehaze chybu, protoze podle me narusuje bezpecnost kodu, kdyz do ukazatele na nekonstatni hodnotu priradim ukazatel na konstatni hodnotu tak pak muzu beztrestne zapsat hodnotu po dereferenci toho nekonstatniho.
    16.12.2006 18:44 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: const v c++
    Pro přesnou odpověď by asi bylo potřeba podívat se pořádně do specifikací C a C++, možná je to dokonce skutečně chyba (tedy to, že při překladu C++ to warning nehází). Kdybych si měl tipnout, možná C++ ten cast ignoruje, protože stringové literály jsou konstantní ze své podstaty, takže se chová, jako by tam nebyl. Ale to je jen spekulace…
    16.12.2006 19:44 qwerty | skóre: 9
    Rozbalit Rozbalit vše Re: const v c++
    Z meho pohledu by melo hazet chybu nebo warning i char* s = "sss"; (tzn. i bez toho explicitniho pretypovani) aby nebylo mozno delat veci jako *s = 'x', od toho prece const je aby zabranil presne takovym vecem tak nechapu proc je takove chovani potlaceno u stringu.

    Založit nové vláknoNahoru

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

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