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 11:55 | Komunita

Vývojový tým OpenSSL ve spolupráci s iniciativou Core Infrastructure konsorcia Linux Foundation spustil proces přelicencování této kryptografické knihovny ze současné licence na licenci Apache Licence v 2.0 (ASLv2). Nová licence usnadní začleňování OpenSSL do dalších svobodných a open source projektů. Všichni dosavadní vývojáři OpenSSL (Authors) obdrží v následujících dnech email s prosbou o souhlas se změnou licence.

Ladislav Hagara | Komentářů: 6
včera 01:11 | Komunita

Před třemi týdny Mozilla.cz představila projekt Photon, jehož cílem je návrh a implementace nového vzhledu Firefoxu. Včera zveřejnila první náhled vzhledu Photon. Práce na projektu Photon jsou rozděleny do pěti týmů, které celkem čítají 19 lidí. Zaměřují se na zlepšení prvního spuštění Firefoxu a zaujetí nových uživatelů, celkovou úpravu vzhledu, zlepšení animací, zrychlení odezvy uživatelského rozhraní a také upravení nabídek. Vývoj lze sledovat v Bugzille.

Ladislav Hagara | Komentářů: 26
23.3. 20:00 | Komunita

OneDrive pro firmy je již ve webových prohlížečích na Linuxu stejně rychlý jako na Windows. Microsoft opravil chybu z listopadu loňského roku. OneDrive pro firmy běžel na Linuxu mnohem pomaleji než na Windows. V popisu chyby bylo uvedeno, že stačilo v prohlížeči na Linuxu nastavit v user-agentu Windows a vše se zrychlilo. Odpovědí Microsoftu bylo (Internet Archive: Wayback Machine), že Linux není podporován. Po bouřlivých diskusích na redditu i Hacker News byla chyba nalezena a opravena.

Ladislav Hagara | Komentářů: 6
23.3. 19:00 | Zajímavý projekt

Byla vyhlášena soutěž Hackaday Prize 2017. Soutěž je určena vývojářům open source hardwaru. Pro výherce je připraveno celkově 250 tisíc dolarů. Každý ze 120 finalistů získá tisíc dolarů. Nejlepší pak navíc 50, 30, 20, 15, 10 a 5 tisíc dolarů. Jedná se již o čtvrtý ročník soutěže. V roce 2014 zvítězil projekt globální sítě open source pozemních satelitních stanic SatNOGS. V roce 2015 zvítězil open source systém pro řízení elektrických invalidních vozíků pohybem očí Eyedriveomatic. V roce 2016 zvítězil modulární robot Dtto.

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

Byla vydána Samba ve verzích 4.6.1, 4.5.7 a 4.4.12. Řešen je bezpečnostní problém CVE-2017-2619. Pomocí symbolických odkazů a souběhu (symlink race) lze "teoreticky" získat přístup k souborům, které nejsou sdíleny. Linuxové distribuce jsou postupně aktualizovány (Debian).

Ladislav Hagara | Komentářů: 0
23.3. 07:43 | Nová verze

Na Steamu se objevil port hry Arma: Cold War Assault (Operation Flashpoint) pro Mac a Linux. … více »

creon | Komentářů: 29
23.3. 05:55 | Nová verze

Po 18 měsících od vydání verze 8.0 byla vydána verze 9.0 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab. Představení nových vlastností v příspěvku na blogu a na YouTube.

Ladislav Hagara | Komentářů: 0
23.3. 03:33 | Komunita

Platnost posledního patentu souvisejícího s Dolby Digital (AC-3) vypršela. Po MP3 se tak do Fedory oficiálně dostane také kodek AC-3.

Ladislav Hagara | Komentářů: 5
23.3. 00:44 | Komunita

Feral Interactive, společnost zabývající se vydáváním počítačových her pro operační systémy macOS a Linux, nabízí své hry na Steamu vývojářům open source 3D grafické knihovny Mesa zdarma. Podmínkou je minimálně 25 commitů za posledních 5 let. Stejnou nabídku dostali vývojáři knihovny Mesa v roce 2015 od Valve. O rok dříve dostali od Valve tuto nabídku vývojáři Debianu a Ubuntu.

Ladislav Hagara | Komentářů: 0
22.3. 23:55 | Nová verze

Opera 44, verze 44.0.2510.857, byla prohlášena za stabilní. Nejnovější verze tohoto webového prohlížeče je postavena na Chromiu 57. Z novinek vývojáři Opery zdůrazňují podporou Touch Baru na nejnovějších MacBoocích Pro (gif). Přehled novinek pro vývojáře na blogu Dev.Opera.

Ladislav Hagara | Komentářů: 1
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (14%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 927 hlasů
 Komentářů: 72, poslední 1.3. 11:16
    Rozcestník

    Dotaz: Konverze iterátorů

    27.4.2009 19:22 Andrej | skóre: 43 | blog: Republic of Mordor | Zürich
    Konverze iterátorů
    Přečteno: 235×

    Ahoj, dnes jsem narazil na cosi zvláštního. Změnil jsem typ STL kontejneru a nepoužil jsem refactoring. Eclipse tedy přeložil projekt s původními deklaracemi iterátorů a s novým typem kontejneru. Kupodivu bylo možné (aspoň z pohledu překladače a v době překladu) přiřadit nekompatibilní iterátory.

    Deklarace kontejneru:

        const std::map< uint32_t, Hook * > hooks; 

    Tohle se nepřeloží a důkladně to zařve, což jistě nikoho nepřekvapí:

        const std::vector< Hook * >::const_iterator end = hooks.end();
    

    Jenže (a teď to přijde!) tohle se mi přeloží:

        const std::vector< Hook * >::const_reverse_iterator end = hooks.rend();
    

    Jak to? Proč? Kdyby konverze těch iterátorů dávala smysl (iterace přes klíče...?), byl by na to konverzní operátor a bylo by to v dokumentaci. (Navíc by to fungovalo v obou směrech.) Jenže pokud vím, není tomu tak. Ještě doplním, že používám kompilátor Intel.

    Tohle je buď záhada, nebo další tajemné zákoutí C++, které ještě neznám. Je snad mezi „normálními“ a „převrácenými“ iterátory nějaký podstatný rozdíl?

    ǑǦŹǓǕǙǞǺǨȞȬḔḦḰḾṊṎṸẄẌỖ

    Odpovědi

    Voty avatar 28.4.2009 08:53 Voty | skóre: 12 | blog: gemini
    Rozbalit Rozbalit vše Re: Konverze iterátorů

    Zajímavé, zajímavé. gcc to vezme také, a dokonce je spokojený i s tímhle :(

        const std::map< std::string, std::string > hooks;
        const std::vector< int ** >::const_reverse_iterator end = hooks.rend();

     

    Jednu rozbil a tu druhou ztratil.
    28.4.2009 14:20 Sinuhet | skóre: 31
    Rozbalit Rozbalit vše Re: Konverze iterátorů

    Jak vypada vas zdrojak? Jak ho kompilujete? Mne to g++ (verze 3.3, 4.[0-3]) nesezere.

    $ cat test.cc
    
    #include <vector>
    #include <stdint.h>
    #include <map>
    
    struct Hook
    {
            char data;
    };
    
    int main(int argc, char** argv)
    {
            const std::map<uint32_t, Hook*> hooks;
    
    //      const std::vector< Hook * >::const_iterator end_a = hooks.end();
            const std::vector< Hook * >::const_reverse_iterator end_b = hooks.rend();
    
            return 0;
    }
    
    $ g++ -o test test.cc
    /usr/include/c++/4.3/bits/stl_iterator.h: In constructor ‘std::reverse_iterator<_Iterator>::reverse_iterator(const std::reverse_iterator<_Iter>&) [with _Iter = std::_Rb_tree_const_iterator<std::pair<const unsigned int, Hook*> >, _Iterator = __gnu_cxx::__normal_iterator<Hook* const*, std::vector<Hook*, std::allocator<Hook*> > >]’:
    test.cc:16:   instantiated from here
    /usr/include/c++/4.3/bits/stl_iterator.h:139: error: no matching function for call to ‘__gnu_cxx::__normal_iterator<Hook* const*, std::vector<Hook*, std::allocator<Hook*> > >::__normal_iterator(std::_Rb_tree_const_iterator<std::pair<const unsigned int, Hook*> >)’
    /usr/include/c++/4.3/bits/stl_iterator.h:683: note: candidates are: __gnu_cxx::__normal_iterator<_Iterator, _Container>::__normal_iterator(const _Iterator&) [with _Iterator = Hook* const*, _Container = std::vector<Hook*, std::allocator<Hook*> >]
    /usr/include/c++/4.3/bits/stl_iterator.h:680: note:                 __gnu_cxx::__normal_iterator<_Iterator, _Container>::__normal_iterator() [with _Iterator = Hook* const*, _Container = std::vector<Hook*, std::allocator<Hook*> >]
    /usr/include/c++/4.3/bits/stl_iterator.h:666: note:                 __gnu_cxx::__normal_iterator<Hook* const*, std::vector<Hook*, std::allocator<Hook*> > >::__normal_iterator(const __gnu_cxx::__normal_iterator<Hook* const*, std::vector<Hook*, std::allocator<Hook*> > >&)

    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.