• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Tworzenie biblioteki.

42 Warsaw Coding Academy
+1 głos
666 wizyt
pytanie zadane 22 października 2016 w C i C++ przez Munvik Dyskutant (9,350 p.)
Czesć. Chcę stworzyć swoją pierwszą bibliotekę, ale nie wiem jak mam się zabrać do tego.

Otóż chciałbym stworzyć kilka klas, które będą mi potrzebne w moich projektach, tak aby nie pisać tego samego kodu.

Stworzyłem już pliki .h i .cpp do tego celu i jak mam to złożyć w całość ?

Używam VS 2015 Community

2 odpowiedzi

+6 głosów
odpowiedź 22 października 2016 przez Patrycjerz Mędrzec (192,320 p.)
wybrane 22 listopada 2019 przez Munvik
 
Najlepsza

Biblioteka programistyczna to uniwersalny kod - tyle i aż tyle. Może mieć różne postacie, czy to zwykłego źródła dołączanego do projektu, biblioteki statycznej lub dynamicznej.

W pierwszym przypadku chodzi o rozdzielenie kodu na niezależny moduł, gdzie jest on kompilowany razem z projektem wynikowym (głównie używa się tego w szablonach, gdzie implementacja funkcji musi być tam, gdzie jej użycie).

W drugim biblioteka to oddzielnie skompilowany kod w postaci odpowiedniego pliku. Zaleta w porównaniu do poprzednika jest taka, że kompilacja tego modułu już nie zachodzi, skracając kompilację projektu wynikowego.

Ostatnim typem jest biblioteka dynamiczna, która dzieli zalety linkowania statycznego oraz umożliwia użycie tego samego kodu różnym procesom, tzn. zyskuje na tym wielkość pliku wykonywalnego. Taka biblioteka jest wczytywana do pamięci w trakcie uruchomienia programu (Load-Time Dynamic Linking) lub wtedy, kiedy tego potrzebujesz (Run-Time Dynamic Linking).

Z teorii to tyle. Zostało ci jedynie poszukać poradników na tworzenie i używanie bibliotek statycznych i dynamicznych w zależności od danego kompilatora i systemu.

komentarz 22 października 2016 przez Munvik Dyskutant (9,350 p.)
Według Cb jaki typ jest najlepszy ? Dynamiczna ?
komentarz 22 października 2016 przez Patrycjerz Mędrzec (192,320 p.)
To zależy, czego potrzebujesz. Nie oszukujmy się, w dzisiejszych czasach parę bajtów więcej nikomu nie robi różnicy, ale zazwyczaj używa się bibliotek dynamicznych i takową też ci radzę zrobić.
komentarz 22 października 2016 przez Munvik Dyskutant (9,350 p.)
Ale używając słowa biblioteka to masz na myśli pliki .h i .cpp wrzucone jakoś w jeden plik .lib ? Tak to działa ?
1
komentarz 22 października 2016 przez Patrycjerz Mędrzec (192,320 p.)

Jeśli chodzi o bibliotekę dynamiczną, jest to skompilowany kod + elementy potrzebne do użytkowania takiego kodu. W Windows ma to postać formatu DLL. Nie musisz się przejmować o szczegóły - wszystko zrobi za ciebie kompilator, choć musisz nieco zmienić swój kod źródłowy (z tego, co wiem, pododawać modyfikator __declspec w odpowiednich miejscach).

Tutaj masz poradnik, jak to zrobić przy Visual Studio i Windows.

+2 głosów
odpowiedź 22 października 2016 przez obl Maniak (51,300 p.)

Dawno tego nie robiłem, więc ci za wiele nie podpowiem. Tak na szybko to mogę powiedzieć, że musisz utworzyć nowy projekt (może być console application) i później podczas klikania w okienku Win32 Application Wizard powinieneś zaznaczyć DLL. Utwórz ten projekt i zobacz standardowo generowany przez Visual Studio kod, myślę, że to ci pomoże zrozumieć co i jak.

Podobne pytania

0 głosów
1 odpowiedź 335 wizyt
pytanie zadane 22 listopada 2019 w C i C++ przez Munvik Dyskutant (9,350 p.)
0 głosów
0 odpowiedzi 293 wizyt
pytanie zadane 17 kwietnia 2018 w C i C++ przez Mateusz Tocha Bywalec (2,560 p.)
0 głosów
2 odpowiedzi 1,164 wizyt
pytanie zadane 9 listopada 2016 w C i C++ przez Ditrix Mądrala (5,650 p.)

93,382 zapytań

142,382 odpowiedzi

322,539 komentarzy

62,738 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...