BitTorrent Client Transmissioun schalt vun C op C ++

D'libtransmission Bibliothéik, déi d'Basis vum Transmission BitTorrent Client ass, gouf an C++ iwwersat. D'Transmissioun huet nach ëmmer Bindungen mat der Ëmsetzung vu Benotzerinterfaces (GTK Interface, Daemon, CLI), geschriwwen an der C Sprooch, awer d'Versammlung erfuerdert elo e C ++ Compiler. Virdrun war nëmmen de Qt-baséiert Interface an C geschriwwen ++ (de Client fir macOS war an Objective-C, de Web Interface war an JavaScript, an alles anescht war am C).

D'Porting gouf vum Charles Kerr, dem Projet Leader an Auteur vun der Transmission Interface baséiert op Qt. Den Haaptgrond fir de ganze Projet op C++ ze wiesselen ass d'Gefill datt wann Dir Ännerunge vun der Libtransmission maacht, Dir dauernd d'Rad erfannen musst, och wann et fäerdeg Léisunge fir ähnlech Probleemer an der Standard C++ Bibliothéik sinn (zum Beispill, et war néideg fir eng schafen Är eege Funktiounen tr_quickfindFirstK () an tr_ptrArray () an der Presenz vun std:: partial_sort () an std :: vektor ()), wéi och C ++ mat méi fortgeschratt Typ Kontroll Ariichtungen.

Et gëtt bemierkt datt d'Entwéckler sech net d'Zil setzen fir direkt déi ganz Libtransmission an C++ nei ze schreiwen, awer wëlles den Iwwergank op C++ graduell ëmzesetzen, ugefaange mam Iwwergank fir de Projet ze kompiléieren mam C++ Compiler. A senger aktueller Form kann den C Compiler net méi fir d'Assemblée benotzt ginn, well e puer C++-spezifesch Konstruktiounen un de Code bäigefüügt goufen, sou wéi de "auto" Schlësselwuert an d'Typ Konversioune mat dem "static_cast" Bedreiwer. Ënnerstëtzung fir eeler C Funktiounen ass geplangt fir Kompatibilitéit ze bleiwen, awer d'Entwéckler sinn elo encouragéiert fir std :: sort () amplaz qsort () an std :: vector amplaz tr_ptrArray ze benotzen. constexpr amplaz tr_strdup () an std :: vector amplaz tr_ptrArray.

Source: opennet.ru

Setzt e Commentaire