Czym dokładnie są nagłówki prekompilowane? kiedy są używane?Prekompilowane nagłówki
Odpowiedz
Wstępnie skompilowane nagłówki to optymalizacja używana podczas kompilacji.
Zasadniczo, jeśli skompilujesz coś takiego jak stdio.h
z dokładnie tymi samymi definicjami i środowiskiem, możesz spokojnie założyć, że wynik będzie taki sam za każdym razem.
Kompilator zapamiętuje "skompilowaną" wersję tego nagłówka, więc nie musi tego robić ponownie.
W rzeczywistości wydaje się być początkowa grupa nagłówków, które czyni różnicę więc, jeśli każdy z plikami źródłowymi rozpoczyna się:
#define XYZZY 42
#include <stdio.h>
#include <stdlib.h>
pierwszy zestawia zupełnie ale pamięta stan bezpośrednio po tę trzecią linię. Następny może po prostu całkowicie odrzucić te trzy linie i załadować zapisany stan przed kontynuowaniem kompilowania reszty pliku.
Gdy po raz pierwszy ujrzałem tę funkcję był na Windows z masywnejwindows.h
pliku nagłówka, a wierz mi, że popełnił wiele zmian do ogólnych czasów kompilacji.
- 1. Xcode 6.1 Prekompilowane nagłówki
- 2. Co zawierają prekompilowane nagłówki Visual Studio?
- 3. Pytanie o prekompilowane nagłówki w Visual C++
- 4. Android Studio Zewnętrzna kompilacja natywna Prekompilowane nagłówki
- 5. Rails 3.2.1, zasoby prekompilowane dwukrotnie podczas wdrażania?
- 6. Linq-to-entity, pytania ogólne i prekompilowane
- 7. Dlaczego zwracanie Heroku "devise/sessions.js nie jest prekompilowane"?
- 8. Nagłówki Angular2/Http (POST)
- 9. Jak uzyskać nagłówki HTTP
- 10. Nagłówki utworzone wewnątrz szablonu
- 11. Django ciasteczka i nagłówki
- 12. Jak zmienić nagłówki żądania?
- 13. Wygasa nagłówki nie działają
- 14. Wygasa nagłówki w AppHarbor
- 15. Przekierowywanie php - nagłówki HTML
- 16. Python Edytuj nagłówki CSV
- 17. AFNetworking to nagłówki
- 18. Strony Github, nagłówki HTTP
- 19. Python CSV nagłówki
- 20. HttpClient pobrać wszystkie nagłówki
- 21. Odpowiedzi SignalR nadpisujące nagłówki
- 22. Nagłówki dla funkcji C POSIX
- 23. PHPExcel ustawić określone nagłówki formacie
- 24. Jak uzyskać nagłówki odpowiedzi iframe?
- 25. Animowane nagłówki listView daje ClassCastException
- 26. Nagłówki CORS nie są ustawione
- 27. Python - Zamówione nagłówki Żądania HTTP
- 28. Niestandardowe nagłówki na Amazon S3
- 29. Wysyłanie niestandardowe nagłówki przez RSpec
- 30. Poprawnie wyeksportuj nagłówki Linuksa, moduły
możliwy duplikat [prekompilowanych nagłówków] (http://stackoverflow.com/questions/1293538/precompiled-headers). Zobacz także: [Dlaczego warto używać prekompilowanych nagłówków (C/C++)?] (Http://stackoverflow.com/questions/903228/why-use-precompiled-headers-c-c) –