Temat: Kompilacja i uruchomienie programu

Jeżeli po dokonaniu zmian w programie od razu próbujemy go uruchomić wciskając F5, to w pewnej sytuacji może okazać się, że nie zauważymy żadnej zmiany w działaniu programu.

W normalnej sytuacji Visual Studio pyta, czy przebudować program, jeżeli zauważa, że zostały w nim dokonane zmiany.

Jeżeli natomiast podczas budowania wystąpią błędy, pyta czy uruchomić ostatnią poprawną wersję pliku exe.

W pojawiających się oknach dialogowych można jednak zaznaczyć prośbę o nie wyświetlanie ich ponownie i bardzo prawdopodobne, że ktoś (lub my sami) już kiedyś taką opcję mniej lub bardziej świadomie zaznaczył.

Wówczas Visual nie zapyta o nic, tylko w najgorszej sytuacji po naciśnięciu F5 uruchomi od razu poprzednią wersję programu.

Dlatego zalecam (szczególnie na komputerach w laboratorium) zawsze najpierw kompilować program przez CTRL + F7, a dopiero potem jeżeli widzimy, że nie ma żadnych błędów, uruchamiać go klawiszem F5.

Ponadto jest istotna różnica pomiędzy uruchamianiem przy pomocy F5 a CTRL+F5. Pierwsza z opcji uruchamia program z debuggerem, czyli możemy śledzić jego wykonanie, wstawiać breakpointy i analizować instrukcje linijka po linijce. Skutkiem ubocznym jest jednak natychmiastowe zniknięcie okienka konsoli po zakończeniu działania programu.

Przy uruchamianiu przez CTRL+F5 okienko nie znika, jednak jednocześnie nie działa debugger, dlatego zalecam uruchamiać program klawiszem F5, a jeżeli chcemy zatrzymać okienko konsoli, możemy zrobić to bezpośrednio w programie.

Można to zrobić na przykład instrukcją system("pause"), która ma to do siebie, że działa tylko pod Windowsem i wyświetla standardowy komunikat z prośbą o naciśnięcie dowolnego klawisza, więc nie każdemu może się to rozwiązanie podobać, ale komunikaty z funkcji system można przekierować w nicość pisząc:

system("pause > null");