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 11:22 | Upozornění

    Někteří zákazníci O2 mohou aktuálně zaznamenat zhoršenou dostupnost internetových služeb. Na odstranění potíží se pracuje [Facebook].

    Ladislav Hagara | Komentářů: 2
    dnes 01:22 | Nová verze

    PyPy (Wikipedie), tj. implementace Pythonu v RPythonu, alternativa CPythonu v C, byla vydána v nové major verzi 8.0.0. Podporuje Python 2.7, 3.11 a 3.12.

    Ladislav Hagara | Komentářů: 0
    dnes 00:22 | Komunita
    V rakouském Štýrském Hradci probíhá konference vývojářů a uživatelů desktopového prostředí KDE Plasma Akademy 2026. O víkendu proběhly přednášky. Videozáznamy jsou k dispozici na YouTube.
    Ladislav Hagara | Komentářů: 1
    včera 23:55 | Bezpečnostní upozornění

    V jádře Linux byly nalezeny a v upstremu ve verzích 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50 a 7.2.4 již opraveny 4 kritické zranitelnosti umožňující eskalaci práv: DirtyAH6 (CVE-2026-80844), TUNderflow (CVE-2026-81000), PPPoEject (CVE-2026-68121) a DiagSpill (CVE-2026-74469).

    Ladislav Hagara | Komentářů: 0
    včera 23:11 | Zajímavý článek

    Německá policie a celníci zneužívají ke čtení zpráv komunikačních aplikacích WhatsApp, Signal, Telegram nebo Threema velice jednoduchý trik, který nevyžaduje prolomení šifrování, spear phishing, odposlech SMS či jinou technicky náročnou metodu. Příslušníkům státního aparátu pouze stačí získat krátký přístup k odemčenému telefonu a prostřednictvím QR kódu propojit účet s oficiální desktopovou nebo webovou aplikací v policejním

    … více »
    AfD 💙 | Komentářů: 1
    19.9. 02:11 | IT novinky Ladislav Hagara | Komentářů: 0
    18.9. 19:11 | Zajímavý projekt

    Fugleramme, v překladu 'ptačí rámeček', je open-source projekt postavený na Raspberry Pi, který pomocí lokální umělé inteligence BirdNET-Go rozpoznává ptačí druhy podle jejich zpěvu a na displeji následně zobrazuje koláž tvořenou odpovídajícími ilustracemi. Databáze obsahuje přes 800 ručně vybraných historických přírodovědných ilustrací více než 400 druhů ptáků.

    … více »
    AfD 💙 | Komentářů: 1
    18.9. 16:55 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 18.0. Přidáno bylo 13 007 nových znaků. Celkově jich je 172 808. Přibylo 9 nových Emoji.

    Ladislav Hagara | Komentářů: 6
    18.9. 13:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 169 (pdf).

    Ladislav Hagara | Komentářů: 0
    18.9. 03:33 | Nová verze

    Byla vydána nová verze 6.4 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (21%)
    Celkem 2704 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: std::remove_if mutace v predicate

    2.6.2017 19:29 Petr
    std::remove_if mutace v predicate
    Přečteno: 322×
    Na cppreference čtu, že nemůžu modifikovat objekty v "predicate" funkci, kterou předám std::remove_if. Proč tomu tak je? Potřeboval bych odstranit určité prvky z vektoru, které splňují danou podmínku, ale zároveň při jejich odstranění z vektoru potřebuji udělat jejich mutaci. Bohužel projít prvky až po remove_if je pozdě, protože provádí move, nikoliv swap. Musím si opravdu napsat kvůli tomu vlastní algoritmus, který bude kopií toho standardního, jenom nebude mít "zakázánu" mutaci?

    Odpovědi

    2.6.2017 23:18 johniez | skóre: 17 | blog: xyz | Praha
    Rozbalit Rozbalit vše Re: std::remove_if mutace v predicate
    3.6.2017 03:25 .
    Rozbalit Rozbalit vše Re: std::remove_if mutace v predicate
    Pokud potřebuješ mutovat rušený element, tak něco děláš špatně.
    3.6.2017 14:59 Petr
    Rozbalit Rozbalit vše Re: std::remove_if mutace v predicate
    V tom vectoru jsou pointery, vector objekty nevlastni. Jsou to vyfiltrovane polozky. Na zaklade kriteria z nich potrebuju odstranit ty ktere ho splnuji, zaroven polozkam chci odnastavit priznak, ze jsou zobrazeny. Prece kvuli tomu zmenemusim vector prochazet 2x...
    3.6.2017 15:56 doon
    Rozbalit Rozbalit vše Re: std::remove_if mutace v predicate

    Napadají mě 2 řešení:

    1) Místo pointerů si udělej wrapper třídu na pointer, která v destruktoru nastaví ten příznak a pak udělej erase(remove_if)

    2) Příznaku přidej klíčové slovo mutable a potom můžeš volat metodu, která upraví příznak a je zároveň const

    3.6.2017 19:53 .
    Rozbalit Rozbalit vše Re: std::remove_if mutace v predicate
    Pak tedy měníš odkazovaný objekt a ne ten ukazatel -- element vektoru.
    3.6.2017 19:56 Petr
    Rozbalit Rozbalit vše Re: std::remove_if mutace v predicate
    Takhle jsem o tom neuvažoval. Děkuji, prostě tedy budu mutovat odkazovaný objekt.
    3.6.2017 03:58 doon
    Rozbalit Rozbalit vše Re: std::remove_if mutace v predicate
    tak udělej klasický erase(remove_if) a akci, kterou potřebuješ udělat při odstranění hoď do destruktoru?

    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.