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 22:22 | Komunita

    Open source webový aplikační framework Django slaví 20. narozeniny.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Komunita

    V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.

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

    Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.

    Ladislav Hagara | Komentářů: 15
    včera 10:55 | IT novinky

    Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.

    Ladislav Hagara | Komentářů: 16
    13.7. 17:55 | Zajímavý projekt

    Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.

    Ladislav Hagara | Komentářů: 11
    11.7. 16:44 | Komunita

    Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.

    Ladislav Hagara | Komentářů: 3
    11.7. 14:55 | Humor

    McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.

    Ladislav Hagara | Komentářů: 16
    11.7. 00:11 | Nová verze

    Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 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.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    10.7. 21:00 | Bezpečnostní upozornění

    Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 4
    10.7. 15:22 | Nová verze

    Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.

    Ladislav Hagara | Komentářů: 12
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (26%)
     (7%)
     (3%)
     (1%)
     (1%)
     (4%)
    Celkem 393 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: kratky dotaz k iteratoru - C++

    20.11.2010 20:25 sranda_zitra
    kratky dotaz k iteratoru - C++
    Přečteno: 354×
    Dobry vecer a dobrou chut, pokud prave vecerite. Mel bych mensi dotaz k iteratoru od kontejneru vector. Vector ma v sobe pole toho, co zrovna drzi. Pokud bych se chtel k tomuto poli dostat (resp. k ukazateli na 1. prvek tohoto pole), provedu to tak, ze do L-Hodnoty dam promennou typu pointer na typ, ktery zrovna vector drzi a do R-Hodnoty napisu: &*mujVector.begin();

    napriklad: short int* p_sh = &*mujVector.begin().
    Muzu si tento kus kodu prelozit nasledovne? Hvezdickou rikam "vrat hodnotu" prvniho prvku v poli a ampersand + hvezdickou reknu "vrat adresu prvniho prvku v poli". Je to tak a nebo se mylim?

    Predem diky.

    Odpovědi

    20.11.2010 21:32 mrk
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    Je to skoro správne, &*mujVector.begin() vráti pointer na prvý prvok. Len menšia oprava - *mujVector.begin() nie je hodnota, ale referencia. Takže je možné napísať

    *mujVector.begin() = 42;
    

    21.11.2010 09:24 sranda_zitra
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    Diky, naprosto srozumitelne vysvetleni.
    vlastikroot avatar 20.11.2010 21:46 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    Tohle by mě nenapadlo, proč to neni normálně int * p = mujVector.begin() ?
    We will destroys the Christian's legion ... and the cross, will be inverted
    20.11.2010 23:23 jekub
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    tohle je normalne?
    21.11.2010 00:06 Sinuhet | skóre: 31
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    Protoze nikde nemate zaruceno, ze iterator musi jit konvertovat na ukazatel na danny typ (pripadne, ze je primo jako ukazatel implementovan).
    vlastikroot avatar 21.11.2010 09:50 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    Aha, díky. Takže u vectoru to sice funguje, ale je to prasárna.
    We will destroys the Christian's legion ... and the cross, will be inverted
    22.11.2010 17:14 Jirka P
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    Ne tak úplně, funguje to jen na konkrétní implementaci vectoru. Např. na MSVC v Debug módu jsou všechny iterátory objekty, jejichž metody obsahují (kromě předepsané funkčnosti) navíc asserty, takže tam to nefunguje.
    22.11.2010 14:54 Sten
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    Protože normálně je to:
    std::vector<int>::iterator it = mujVector.begin();
    Iterátor se chová stejně jako pointer.
    22.11.2010 14:51 Sten
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++
    Nedoporučuji to používat. Pokud vím, není zaručeno, že pole je souvislé, pouze že přístup k jednomu prvku má konstantní složitost. Místo pointerů používejte přímo iterátory, které se chovají jako stejně jako pointery.
    22.11.2010 15:22 Sinuhet | skóre: 31
    Rozbalit Rozbalit vše Re: kratky dotaz k iteratoru - C++

    Mylite se, u vektoru je vyslovne receno, ze polozky musi byt usporadany souvisle za sebou.

    The elements of a vector are stored contiguously, meaning that if v is a vector<T, Allocator> where T is some type other than bool, then it obeys the identity &v[n] == &v[0] + n for all 0 <= n < v.size().

    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.