Goto page Previous 1, 2, 3, 4, 5, 6 Next
Janusz
Guest
Tue Oct 24, 2017 6:53 pm
W dniu 2017-10-24 o 20:31, Piotr Gałka pisze:
Quote:
W dniu 2017-10-24 o 17:36, Janusz pisze:
Ale inline nic nie zmienia, to jest tylko sposób wywołania funkcji,
nadal masz zagnieżdżone pętle i potrzebę bezbolesnego wyjścia z tego
bagna.
Chodziło mi tylko o czytelność. Napisałem inline aby podkreślić, że da
się to zrobić bez pogarszania wydajności.
Ok.
--
Pozdr
Janusz
Grzegorz Niemirowski
Guest
Tue Oct 24, 2017 8:33 pm
Piotr Gałka <piotr.galka@cutthismicromade.pl> napisał(a):
Quote:
Tak się zastanawiam do czego ona mogła by być przydatna i nie bardzo
potrafię wymyślić jakiś przykład generujący realną taką potrzebę.
Nieraz emuluje się w ten sposób w C wyjątki dostępne w C++, takie
natychmiastowe wyjście z nawet mocno zagnieżdżonego kodu i przeskok do
etykiety obsługującej wyjątek.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
Mateusz Viste
Guest
Wed Oct 25, 2017 12:28 am
On Tue, 24 Oct 2017 22:33:43 +0200, Grzegorz Niemirowski wrote:
Quote:
Nieraz emuluje się w ten sposób w C wyjątki dostępne w C++, takie
natychmiastowe wyjście z nawet mocno zagnieżdżonego kodu i przeskok do
etykiety obsługującej wyjątek.
Ja tam myślę że jest odwrotnie - to C++ ze swoją całą "wyjątkowością"
próbuje emulować niezastąpione GOTO, bo to ostatnie z dnia na dzień
przestało być modne :)
Mateusz
Piotr Wyderski
Guest
Wed Oct 25, 2017 7:51 am
Mateusz Viste wrote:
Quote:
Ja tam myślę że jest odwrotnie - to C++ ze swoją całą "wyjątkowością"
próbuje emulować niezastąpione GOTO
C++ ma goto, więc niczego emulować nie musi.
Quote:
bo to ostatnie z dnia na dzień przestało być modne
Ono jest tak samo modne, jak kolonoskopia -- czasami trzeba...
Pozdrawiam, Piotr
slawek
Guest
Sun Oct 29, 2017 8:42 pm
On Mon, 23 Oct 2017 23:07:53 +0200, ToMasz <tomasz@poczta.fm.com.pl>
wrote:
Quote:
go to 100 (pranie)
go to 100 (pranie)
go go 100 (pranie)
go to 200 (płukanie)
A po wuja goto? Już w latach 70-tych wiedziano że nie ma sensu używać
skoków. Nota bene, w pralkach bywają dwa mikrokontrolery. Jeden do
ogólnej logiki, drugi do sterowania samym silnikiem.
Ale... pralka zasilana jest z 230V AC, jest woda, może urwać rękę,
obciąć palce, albo zwyczajnie zalać sąsiadów itp. przy próbach i
"debugowaniu". Czy nie lepiej zacząć od czegoś bezpieczniejszego, a
jednocześnie bardziej innowacyjnego niż pralka?
slawek
Guest
Sun Oct 29, 2017 8:48 pm
On Tue, 24 Oct 2017 09:31:16 +0200, Atlantis <marekw1986NOSPAM@wp.pl>
wrote:
Quote:
W C/C++ możesz z grubsza programować tak, jak to się robiło w
Basicu.
Ogólnie, w czymkolwiek to się programuje jak w czymkolwiek. Znaczy
siedzi się (lub stoi lub leży lub zwisa) i programuje.
Tyle że programowanie w C++ obiektowo a w Basic ZX Spektrum to
zupełnie różne światy. Trochę tak jak chodzenie po linie i chodzenie
po trawie.
slawek
Guest
Sun Oct 29, 2017 8:56 pm
On Tue, 24 Oct 2017 09:31:16 +0200, Atlantis <marekw1986NOSPAM@wp.pl>
wrote:
Quote:
przydaje się sporadycznie (choć w pewnych sytuacjach faktycznie się
przydaje)
Nigdy się nie przydaje. No może poza jednym: pozwala odsiać marnych
programistów i kiepskie firmy. Oczywiście mowa o C, a nie Fortranie
IV.
slawek
Guest
Sun Oct 29, 2017 9:38 pm
On Tue, 24 Oct 2017 11:22:51 +0200, Janusz <janusz_kk@o2.pl> wrote:
Quote:
Znalazłby się, np wyjście z podwójnej pętli, breakiem wyjdziesz
tyle że
pętlę wyżej gdzie musisz testować warunek dalszego wyjścia, jak
widzisz
zaciemnia się kod i robi się to mało eleganckie.
Jak ktoś zna tylko pętlę for, to używa break i - gdy sprawy się
komplikują - goto.
slawek
Guest
Sun Oct 29, 2017 9:48 pm
On 24 Oct 2017 10:30:21 GMT, Mateusz Viste <mateusz@wont.tell> wrote:
Quote:
przeczytałem tylko wstęp i miałem dość :)
moich pracowników. Młodym się chyba nudzi
Przeczytałem kilka książek Stroustrupa. Raczej łatwa lektura. Raczej
mądry człowiek, mądrzejszy niż różne Mateuszki. Ale może ja się nie
znam.
slawek
Guest
Sun Oct 29, 2017 9:50 pm
On Tue, 24 Oct 2017 13:23:00 +0200, Piotr
Gałka<piotr.galka@cutthismicromade.pl> wrote:
Quote:
Sprawdziłem.
U mnie (Builder 5) też się zapętla.
Miejsce BCB5 jest w muzeum, zresztą to kiepski kompilator był.
Najśmieszniejsze: błędnie generowały kod dla goto.
A sprawdza się że standardem.
slawek
Guest
Sun Oct 29, 2017 10:17 pm
On Tue, 24 Oct 2017 14:07:12 +0200, Piotr Wyderski
<peter.pan@neverland.mil> wrote:
Quote:
goto jest dobre, ale to konstrukcja dla ekspertów.
Dla Experta? Być może. Dla profesjonalistów? Nie.
slawek
Guest
Sun Oct 29, 2017 10:36 pm
On Tue, 24 Oct 2017 14:36:03 +0200, Piotr Wyderski
<peter.pan@neverland.mil> wrote:
Quote:
Destruktory wywoła, ale liczenie, że posprząta
I dlatego wymyślono GC.
slawek
Guest
Sun Oct 29, 2017 10:38 pm
On Tue, 24 Oct 2017 14:58:15 +0200, "J.F."
<jfox_xnospamx@poczta.onet.pl> wrote:
Quote:
No, goto miedzy funkcjami nie dziala
Jak nie działa jak działa (long jump)?!
Piotr GaĹka
Guest
Mon Oct 30, 2017 9:48 am
W dniu 2017-10-29 o 21:50, slawek pisze:
Quote:
On Tue, 24 Oct 2017 13:23:00 +0200, Piotr
Gałka<piotr.galka@cutthismicromade.pl> wrote:
Sprawdziłem.
U mnie (Builder 5) też się zapętla.
Miejsce BCB5 jest w muzeum, zresztą to kiepski kompilator był.
Najśmieszniejsze: błędnie generowały kod dla goto.
Mam jeszcze jeden programik, który (jak sporadycznie coś muszę dopisać)
kompiluję TC++ 1.0. Co mi szkodzi trzymać jedną kartotekę, która zawiera
tcc.exe (455k), tlink.exe (53k), moje źródło (4k) i mój exe (14k).
Nadal używam Builder 5 bo jak wprowadzili Buildera 6 to się okazało, że
ta najtańsza wersja nie może być stosowana do celów komercyjnych (a w
Builder 5 może). Nigdy nie natknąłem się na błąd z goto bo nigdy nie
użyłem goto.
Używam też Buildera 2010, ale on ma jakąś wadę (ujawniła się po
przeniesieniu pod WIN7) - daje się tylko raz uruchomić po jednym
włączeniu komputera.
P.G.
Mateusz Viste
Guest
Mon Oct 30, 2017 10:11 am
On Mon, 30 Oct 2017 09:48:02 +0100, Piotr Gałka wrote:
Quote:
Mam jeszcze jeden programik, który (jak sporadycznie coś muszę dopisać)
kompiluję TC++ 1.0.
Też tak mam

Tyle że ja używam raczej Turbo C 2.01, lub ew. OpenWatcom.
Quote:
Nadal używam Builder 5 bo jak wprowadzili Buildera 6 to się okazało, że
ta najtańsza wersja nie może być stosowana do celów komercyjnych (a w
Builder 5 może).
Nie żebym do czegokolwiek nakłaniał, ale jeśli nie znasz jeszcze - być
może warto spojrzeć w stronę mingw. Użyłem tego do kilku małych spraw
które wyjątkowo chciałem opublikować pod windows i bardzo sprawnie
działało. Zaleta taka, że to całkowicie darmowe i bez majtek (no strings
attached). To oczywiście "tylko" kompilator - a nie tzw. IDE. Mi to
wszystko jedno, bo i tak piszę tylko w notatniku, ale wiem że nie każdy
tak lubi.
Mateusz
Goto page Previous 1, 2, 3, 4, 5, 6 Next