Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Autor: pekfos
Kurs C++

Jak wstawiać kod na forum?

[pytanie/odpowiedź] Opisuje jak należy wstawiać kod na forum, gdy całość jest zbyt długa, lub z innych powodów nie może być podana.

Zasada pierwsza: formatowanie

Kod wstawiony na forum musi być sformatowny. Kod w C, C++, czy w każdym innym "podobnym" języku należy wstawić między tagi [cpp][/cpp]. Temat z niesformatowanym kodem może zostać usunięty, zwłaszcza gdy część kodu jest pochylona przez [i], lub sformatowana przez inny przypadkowy tag.

Zadada druga: nie tnij kodu

W przypadku problemu z błędem kompilacji, możesz podać tylko fragment kodu, którego dotyczy komunikat błędu. W przypadku problemu z działaniem, nigdy nie tnij kodu. Jeśli kod można po prostu skopiować, skompilować i przetestować, znacznie szybciej otrzymasz pomoc, niż gdyby trzeba było sklejać ochłapy i dopisywać brakujący kod. Zwłaszcza, że wycinki nie muszą zawierać powodu Twojego problemu. Jeśli rozważasz podanie tylko fragmentu kodu, to pamiętaj, że gdybyś naprawdę wiedział który kod jest istotny dla problemu, to może byś teraz nie pisał tematu.

Co więc zrobić, jeśli kod jest za długi, lub z jakiegoś innego powodu nie chcesz/nie możesz podać całości? Podaj SSCCE! Czyli Krótki, samowystarczalny, kompilujący się przykład. W większości przypadków Twój cały projekt nie jest związany z problemem, więc zamiast podawać cały kod, podaj krótszy, uproszczony kod, który reprodukuje problem. A więc skopiuj wszystkie związane rzeczy do jednego pliku CPP na boku i wyrzuć z niego wszystkie niepotrzebne elementy, na każdym kroku upewniając się, że problem wciaż występuje.
Istotne rzeczy do wzięcia pod uwagę:
  • Jeśli używasz zewnętrznych bibliotek, których użycie nie jest konieczne do pokazania problemu, usuń związany z nimi kod,
  • Jeśli problem występuje na tylko jednej ścieżce wykonania (np na tylko jednym case), usuń kod dla wszystkich innych przypadków i usuń instrukcje sterujące, jeśli przestały być potrzebne,
  • Usuń z programu niepotrzebną interakcję z użytkownikiem. Przykładowo, jesli program przyjmuje dane i nie działa dla konkretnych wartości, umieść dane w kodzie i usuń element wprowadzania danych. Jeśli pracujesz nad aplikacją okienkową i masz problem z czymś, co równie dobrze może zostać zaprezentowane w prostym programie konsolowym, to taki napisz.