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 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

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

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    🇨🇽 | Komentářů: 0
    včera 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    🇨🇽 | Komentářů: 5
    včera 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    🇨🇽 | Komentářů: 0
    včera 15:33 | Zajímavý software

    Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 7
    26.12. 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    26.12. 03:33 | Nová verze

    Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    25.12. 14:44 | Nová verze

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (33%)
     (1%)
     (22%)
     (1%)
     (1%)
     (1%)
     (11%)
     (12%)
     (17%)
    Celkem 174 hlasů
     Komentářů: 18, poslední 24.12. 15:29
    Rozcestník

    Dotaz: Použití modulu napsaného v C++ v C

    1.7.2009 13:20 Tojaj
    Použití modulu napsaného v C++ v C
    Přečteno: 555×

    Zdravím,

    píšu program v C a chtěl bych využít modul napsaný v C++.

    Modul poskytuje objekt implementující funkčnost, kterou bych rád využil. S objektem v C asi moc nepochodím a tak mě napadlo, že bych do zmíněného modulu dopsal funkci, která by s objektem manipulovala. Do hlavičkového souboru bych přidal deklaraci této funkce a z C pak pracoval pouze s tou funkcí.

    Bylo by todle možné? Šel by vůbec program napsaný v C slinkovat s modulem napsaným v C++?

     

    Díky za každou radu.

    Odpovědi

    1.7.2009 13:58 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Použití modulu napsaného v C++ v C
    IMO by to mělo takhle jít udělat.
    In Ada the typical infinite loop would normally be terminated by detonation.
    1.7.2009 16:09 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Použití modulu napsaného v C++ v C
    Jde to. Do hlavičkového souboru dát deklaraci funkce, která má zpřístupňovat funkcionalitu v C++ do C, do bloku extern "C" a C++ deklarace (asi včetně toho extern) schovat do #ifdef __cplusplus.

    Pak je ale nejspíš nutné ten program slinkovat C++ linkerem, už jen kvůli globálním C++ objektům (inicializují se při startu programu). Možná tento problém jde vyřešit i jinak.

    Viděl jsem např. rozšiřující moduly Pythonu, který poskytuje C API, takto podobně udělané v C++. Dokud to jde slinkovat, mělo by být možné k C přimíchat i jiné jazyky, např. Fortran, Haskell (o tom ale nic moc nevím)...
    Pavel Stárek avatar 1.7.2009 16:32 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Použití modulu napsaného v C++ v C
    Nějaké povídání o této problematice. Tady se taky něco najde. A ještě tady něco je. Obecně jde o to, správně použít zápis extern "C" v C++ modulu. Jak jsem vyčetl tak by mělo být možno (asi i) volat metody z C++ tříd z C programu a samozřejmě to jde i naopak (volat z C++ funkce v C).
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    2.7.2009 11:56 Tojaj
    Rozbalit Rozbalit vše Re: Použití modulu napsaného v C++ v C

    Tak to vyzkouším.

    Všem děkuju ;)

    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.