Języki Programowania 8From MJanikW ramach przygotowania do zadania możesz: Makefile Czym jest Makefile?
Makefile to plik konfiguracyjny używany przez narzędzie Po co stosować Makefile? * Automatyzuje budowę programu (kompilacja, linkowanie, czyszczenie plików pośrednich).
* Skraca czas — kompilowane są tylko pliki, które zostały zmodyfikowane.
* Upraszcza pracę w dużych projektach z wieloma plikami źródłowymi.
* Pozwala definiować własne cele (targets), np.
Najczęstsze elementy Makefile * *Cel (target)* – nazwa zadania, np. Przykładowy Makefile <verbatim> CXX=g++ CXXFLAGS=-Wall -O2 main: main.o utils.o $(CXX) $(CXXFLAGS) main.o utils.o -o main main.o: main.cpp utils.hpp utils.o: utils.cpp utils.hpp clean: rm -f *.o main </verbatim> Kiedy używać Makefile? * Gdy projekt składa się z więcej niż jednego pliku źródłowego. * Gdy chcesz mieć powtarzalny i automatyczny proces budowania. * Gdy potrzebujesz wygodnego sposobu zarządzania kompilacją i plikami pośrednimi. Podsumowanie Makefile jest prostym, ale bardzo skutecznym narzędziem umożliwiającym automatyzację kompilacji w projektach C/C++. Ułatwia zarządzanie kodem, oszczędza czas i pozwala utrzymać porządek w projekcie.
Kontener STL Czym jest Najważniejsze cechy * Elementy są przechowywane w kolejności dodania. * Rozmiar może się zmieniać w trakcie działania programu. * Zapewnia dostęp za pomocą operatora Najczęściej używane metody * Przykład użycia #include <vector>
#include <iostream>
int main() {
std::vector<int> liczby;
liczby.push_back(10);
liczby.push_back(20);
liczby.push_back(30);
for (size_t i = 0; i < liczby.size(); i++) {
std::cout << liczby[i] << std::endl;
}
return 0; } Kiedy używać * Gdy potrzebujesz dynamicznej tablicy. * Gdy kluczowy jest szybki dostęp do elementów. * Gdy dane często dodajesz na końcu kontenera. * Gdy zależy Ci na prostocie i efektywności. Zalety * Bardzo szybki dostęp do elementów. * Kompaktowe przechowywanie danych w pamięci. * Prosta obsługa i szerokie wsparcie w STL. Wady * Wstawianie elementów w środku jest kosztowne (przesuwanie danych). * Przealokowanie podczas powiększania może czasem kosztować więcej czasu. Podsumowanie
|