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 21:11 | Nová verze

    Byla vydána verze 1.94.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. Zveřejněny byly výsledky průzkumu mezi vývojáři v programovacím jazyce Rust: 2025 State of Rust Survey Results.

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

    Google zveřejnil seznam 185 organizací přijatých do letošního Google Summer of Code (GSoC). Dle plánu se zájemci přihlašují od 16. do 31. března. Vydělat si mohou od 750 do 6600 dolarů. V Česku a na Slovensku je to 900 dolarů za malý, 1800 dolarů za střední a 3600 dolarů za velký projekt. Další informace v často kladených otázkách (FAQ). K dispozici jsou také statistiky z minulých let.

    Ladislav Hagara | Komentářů: 0
    4.3. 22:55 | Nová verze

    Byla vydána únorová aktualizace aneb nová verze 1.110 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.110 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 8
    4.3. 18:11 | IT novinky

    Apple představil 13palcový MacBook Neo s čipem A18 Pro. V základní konfiguraci za 16 990 Kč.

    Ladislav Hagara | Komentářů: 43
    4.3. 12:22 | Komunita

    Kalifornský zákon AB 1043 platný od 1. ledna 2027 vyžaduje, aby operační systémy požadovaly po uživatelích věk nebo datum narození a skrze API poskytovaly aplikacím informaci, zda je uživatel mladší 13 let, má 13 až 16 let, má 16 až 18 let nebo má alespoň 18 let. Vývojáři linuxových distribucí řeší, co s tím (Ubuntu, Fedora, …).

    Ladislav Hagara | Komentářů: 86
    4.3. 11:44 | Pozvánky

    Konference LinuxDays 2026 proběhne o víkendu 3. a 4. října v Praze v areálu ČVUT v Dejvicích na FIT. Čekají vás desítky přednášek, workshopy, stánky a setkání se spoustou chytrých lidí.

    Petr Krčmář | Komentářů: 0
    4.3. 00:44 | Humor

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 145. Aktuální verze Firefoxu je 148. Od září přejde Chrome na dvoutýdenní cyklus vydávání. V kterém týdnu bude mít Chrome větší číslo verze než Firefox? 😀

    Ladislav Hagara | Komentářů: 4
    3.3. 21:55 | IT novinky Ladislav Hagara | Komentářů: 4
    3.3. 13:44 | Komunita

    Bylo spuštěno hlasování o přednáškách a workshopech pro letošní Installfest, jenž proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13.

    Ladislav Hagara | Komentářů: 4
    3.3. 04:33 | Nová verze

    Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (7%)
     (0%)
     (11%)
     (28%)
     (2%)
     (5%)
     (1%)
     (13%)
     (25%)
    Celkem 1017 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: c++ šablonová funkce není nalezena?

    4.5.2010 08:32 vencas | skóre: 32
    c++ šablonová funkce není nalezena?
    Přečteno: 246×
    Zdravím,

    kompilátor ignoruje šablonovou funkci, kterou by měl (podle mě) použít a nevím si už rady. Kód vypadá zhruba tímto způsobem (bohužel to musí být složité):
    using std::max;
    typedef double Real;
    // obezlička na template alias (ano, vím že je v c++0x, ale gcc neumí)
    template<typename Scalar> struct Vector3{ typedef Matrix<Scalar,3,1> type; };
    typedef Vector3<Real>::type Vector3r;
    // funkce
    // argumenty byly původně const, ale nemá to vliv na výsledek
    template<typename Scalar> typename Vector3<Scalar>::type componentMaxVector(typename Vector3<Scalar>::type& a, typename Vector3<Scalar>::type& b){ return typename Vector3<Scalar>::type(max(a.x(),b.x()),max(a.y(),b.y()),max(a.z(),b.z()));}
    
    Normálně to funguje, až na to, že v kódu:
    Vector3r a,b,c;
    // přiřazení do a,b
    c=componentMaxVector(a,b);
    
    kde by se měla podle mě zavolat šablonová funkce se Scalar=Real (tedy Vector3<Scalar>::type=Vector3r) mi g++ (4.4 i 4.5) nadává:
    error: no matching function for call to 'componentMaxVector(Vector3r&, Vector3r&)'
    
    Dokáže někdo vysvětlit, proč g++ tu šablonu nevidí?

    Díky.

    Řešení dotazu:


    Odpovědi

    Josef Kufner avatar 4.5.2010 08:42 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: c++ šablonová funkce není nalezena?
    A máš tu šablonovou funkci celou v hlavičkovém souboru? Ono C++ má takovou drobnou chybu v návrhu...
    Hello world ! Segmentation fault (core dumped)
    4.5.2010 10:08 Sinuhet | skóre: 31
    Rozbalit Rozbalit vše Re: c++ šablonová funkce není nalezena?

    Kdyz mate funkci deklarovanou takhle, tak vam c++ argumenty nevydedukuje. Ale takhle to pujde:

    template<typename Scalar>
    Matrix<Scalar, 3, 1> componentMaxVector(const Matrix<Scalar, 3, 1>& a, const Matrix<Scalar, 3, 1>& b)
    {
    	return typename Vector3<Scalar>::type(max(a.x(),b.x()), max(a.y(),b.y()), max(a.z(),b.z()));
    }
    
    4.5.2010 10:32 vencas | skóre: 32
    Rozbalit Rozbalit vše Re: c++ šablonová funkce není nalezena?
    Díky, vyzkouším. Ale proč? Vždyť je to typedef...
    4.5.2010 11:18 vencas | skóre: 32
    Rozbalit Rozbalit vše Re: c++ šablonová funkce není nalezena?
    Potvrzeno, funguje. Ale nechápu...
    4.5.2010 12:30 Sinuhet | skóre: 31
    Rozbalit Rozbalit vše Re: c++ šablonová funkce není nalezena?
    Prave kvuli tomu typedefu, parametry sablony podle vnoreneho typu dedukovat nelze. Vizte standard, nebo treba tohle.
    4.5.2010 13:00 vencas | skóre: 32
    Rozbalit Rozbalit vše Re: c++ šablonová funkce není nalezena?
    Bezva, díky moc.

    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.