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 12:22 | Zajímavý článek

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

    Ladislav Hagara | Komentářů: 0
    dnes 10:55 | Nová verze

    Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 4
    dnes 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 1
    dnes 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 21:33 | Bezpečnostní upozornění

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

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

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    včera 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

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

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

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

    Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 05:00 | Nová verze

    Byla vydána nová verze 7.0 svobodného open source redakčního systému WordPress. Kódové jméno Armstrong bylo vybráno na počest amerického jazzového trumpetisty a zpěváka Louise Armstronga (What A Wonderful World).

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1679 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: gcc a default argument

    22.6.2005 19:26 psYcOder | skóre: 5
    gcc a default argument
    Přečteno: 100×
    Zdravim, potykam se opet s problemem kompatibility kodu psaneho pro starsi verzi gcc, pri kompilaci na novejsi gcc(3.2.3). Kod je vesmes kompatibilni s novejsi gcc 3.2.3,az na to,ze se zda,ze ve verzi 3.2.3 asi nepodporuje defaultni predavani argumentu... int f(int a,int = 0).

    Muj dotaz je,zda neexistuje nejaky parametr pro tento kompilator,aby s tim pocital. Tech funkci je tam docela dost. Radeji bych to resil timhle zpusobem,nez vse opravoval v kodu.

    Dekuji.

    Odpovědi

    22.6.2005 20:12 johniez | skóre: 17 | blog: xyz | Praha
    Rozbalit Rozbalit vše Re: gcc a default argument
    a nemelo by bejt int f(int a, int b=0)?
    22.6.2005 20:54 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: gcc a default argument
    Ne v deklaraci stačí typ -- a v definici pro změnu nemá implicitní hodnota co dělat. Normálně to funguje v gcc 3.4 i 4.0, které zrušily řadu rozšíření. Samozřejmě v C++; v C implicitní parametry nejsou. Mělo-li je někdy gcc jako rozšíření (nevím o tom), tak je to holt smůla, protože už nemá a musí se to napsat bez nich.
    22.6.2005 20:58 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: gcc a default argument
    Pošli kód, co ti nefunguje, protože tohle normálně funguje
    $ cat implicit.cc 
    #include <iostream>
    
    int f(int a, int = 2, int c = 3);
    
    int f(int a, int b, int c)
    {
      std::cout << a << " " << b << " " << c << std::endl;
      return 0;
    }
    
    int main(void)
    {
      f(1);
      f(2, 3);
      f(3, 4, 5);
    }
    $ g++32 -Wall implicit.cc ; ./a.out
    1 2 3
    2 3 3
    3 4 5
    $ g++32 --version
    g++32 (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-47.fc4)
    Copyright (C) 2002 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    $ 
    
    23.6.2005 23:46 psYcOder | skóre: 5
    Rozbalit Rozbalit vše Re: gcc a default argument
    1. musim reagovat na spravny postreh,ze tam melo byt jako druhy argument b = 0,ale principialne jde temer o stejnou vec. 2.Cast kodu na ktere to napr. nejde...:

    .h Inti::Gtk::Widget *Lookup(const char *aName, const char *cLayoutName = NULL);

    .cc Inti::Gtk::Widget *CClientPageLoader::Lookup(const char *aName, const char *cLayoutName = NULL)

    Ale uz jsem na to prisel...defaultni parametr nesmi byt uveden v .cc implementaci. Pouze v deklaraci.

    Dekuji.
    elviin avatar 22.6.2005 23:44 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
    Rozbalit Rozbalit vše Re: gcc a default argument
    #include <iostream>
    
    void f1( int, ... )
    {
       std::cout << "f( int, ... )\n";
    
    }
    
    void f2( int, int  = 0 )
    {
       std::cout << "f( int, 0 )\n";
    
    }
    
    int main()
    {
       f1( 1 );
       f2( 1, 2 );
       return 0; 
    }
    
    Pokud se budou jmenovat stejne, napr. "f":
    elviin@nilix>g++ test.cpp                                                                    </tmp
    test.cpp: In function `int main()':
    test.cpp:17: error: call of overloaded `f(int)' is ambiguous
    test.cpp:4: error: candidates are: void f(int, ...)
    test.cpp:10: error:                 void f(int, int)
    
    ... ale to je jina kapitola.

    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.