kategoria: C++
[#1] C++ na Amidze bez biblioteki standardowej – techblog
Ostatnio, żeby sobie usystematyzować swoje projekty w C++ napisałem artykuł o tym jak posługiwać się C++ i pracującym na Amidze kompilatorem GCC 2.95.3, nie korzystając przy tym z biblioteki standardowej. Wsparłem to szkieletem programu wraz z makefile, żeby przy rozpoczynaniu nowego programu nie zastanawiać się gdzie ja to miałem na dysku.

Ciekawostka – pusty szkielet, z "prawidłowym" kodem startowym kompiluje się do 424 bajtów pliku wykonywalnego. Troszkę więcej niż w C (tam jest coś koło 300), ale moim zdaniem i tak nieźle. Zwłaszcza, że - znów moim zdaniem - w C++ pisze się wygodniej i szybciej.

Link do artykułu

Zapraszam do lektury i komentowania.
12
[#2] Re: C++ na Amidze bez biblioteki standardowej – techblog

@Krashan, post #1

Krashan, a przywrócisz swoje stare artykułu, w sensie aby była dostępna lista na rastport?
Choćby tutaj https://rastport.com/techblog/
1
[#3] Re: C++ na Amidze bez biblioteki standardowej – techblog

@Krashan, post #1

Bardzo przydatny i profesjonalny artykuł! Dzięki za sporą dawkę wiedzy.

Jeśli chodzi o zmienne (obiekty) globalne, to faktycznie przydają się, niektóre starsze programy (w języku C, standard K&R) mają dużo takich zmiennych, mimo to, są to bardzo złożone kompilatory i interpretery języków, są świetnie zaprojektowane i tak samo dobrze działają.

Jednakże sam uważam, że dodawanie niezbędnych argumentów do funkcji jest dobrą praktyką. Jeżeli potrzebujemy jakiejś dodatkowej zmiennej, po prostu ją dodajmy. Są dwa sposoby: bezpośrednio w liście argumentów, lub dodać do struktury. Wybieramy sposób zależny od sytuacji. Oczywiście musimy czasami rozszerzyć odwołania do tej funkcji, gdy stosujemy metodę pierwszą, ale opłaca się.

Dla przykładu jako, że piszę ostatnio dużo automatów komórkowych, to przekazuję funkcjom dwa argumenty: dane ogólne i dane danej komórki.

Podobnie w C++ możemy stosować zmienne statyczne klasy, wtedy zazwyczaj nie potrzeba przekazywania "danych ogólnych", bo są dostępne.

Z ciekawostek jedną z rzeczy które dodawały punkty za projekt na studiach, była "eliminacja zmiennych globalnych".

Sam nie planuję przerzucać się na C++ w najbliższym czasie, ostatnio dużo piszę w C. Lubię C++ i samego języka nauczyłem się dość dobrze dopiero na studiach. C mi jednak w tej chwili wystarczy.

Z programowaniem obiektowym miałem do czynienia ostatnio przy tworzeniu gry tekstowej w AdvSys.

Dzięki jeszcze raz za podzielenie się wiedzą w fajnej formie. Jak będę chciał pisać w C++ na Amidze, w GCC, ta wiedza mi się bardzo przyda.

P.S. Ja bardziej borykam się z projektowaniem, a przede wszystkim z umiejętnością korzystania z napisanego kodu. W tym temacie muszę sobie radzić sam, ale mi się to udaje.

Ostatnia aktualizacja: 01.08.2025 16:24:25 przez Hexmage960
1
[#4] Re: C++ na Amidze bez biblioteki standardowej – techblog

@Rafael/ARMO, post #2

Krashan, a przywrócisz swoje stare artykuły
Stare, czyli jakie? Trochę rzeczy faktycznie czeka w kolejce.
Przyjąłem zasadę, że po polsku będą na rastport.pl, po angielsku na rastport.com.
2
[#5] Re: C++ na Amidze bez biblioteki standardowej – techblog

@Krashan, post #4

np. chodzi mi o te:
https://web.archive.org/web/20210513020424/http://krashan.ppa.pl/mpp/
[#6] Re: C++ na Amidze bez biblioteki standardowej – techblog

@Rafael/ARMO, post #5

A to zależy. MorphOS mnie jako system w ogóle już nie interesuje, więc na pewno trzebaby przejrzeć co ma zastosowanie do klasycznego AmigaOS i zredagować teksty odpowiednio. Może kiedyś.
1
[#7] Re: C++ na Amidze bez biblioteki standardowej – techblog

@Krashan, post #1

Podziękowania za artykuł.

Jedno pytanie czy w Twoim GCC-Packu to jest ten cały g++ ?
Pytam gdyż nie znalazłem (a może źle coś zainstalowałem albo coś).
A z ciekawości chciałem sobie skompilować ten template by zobaczyć jak to wygląda.
[#8] Re: C++ na Amidze bez biblioteki standardowej – techblog

@asman, post #7

Jedno pytanie czy w Twoim GCC-Packu to jest ten cały g++ ?
W tym na stronie nie ma. Jest w beta wersji 0.4, muszę w końcu ruszyć cztery litery i ją skończyć, potestować instalator i wstawić.
2
[#9] Re: C++ na Amidze bez biblioteki standardowej – techblog

@Krashan, post #8

O to by było super. Mam też prośbę Podczas instalacji tworzony jest katalog GCC-Pack, czy można zrobić tak by użytkownik mógł też sam określić nazwę tego katalogu ?
[#10] Re: C++ na Amidze bez biblioteki standardowej – techblog

@asman, post #9

można zrobić tak by użytkownik mógł też sam określić nazwę tego katalogu?
Można, ale to jest dodatkowa komplikacja skryptu instalacyjnego, która też skomplikuje ewentualny skrypt deinstalacyjny. Chyba, żebym zmienił trochę zasadę działania skryptu. Czyli skrypt nie tworzy nowego katalogu "GCC-Pack" wewnątrz katalogu wskazanego, ale instaluje wprost do wskazanego (który można sobie wtedy stworzyć i nazwać jak się chce).
2
[#11] Re: C++ na Amidze bez biblioteki standardowej – techblog

@Krashan, post #10

Czyli skrypt nie tworzy nowego katalogu "GCC-Pack" wewnątrz katalogu wskazanego, ale instaluje wprost do wskazanego (który można sobie wtedy stworzyć i nazwać jak się chce).

Mi tam pasuje.
1
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem