Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Instrukcja goto - zło wcielone?

Ostatnio zmodyfikowano 2013-01-09 20:50
Autor Wiadomość
DejaVu
» 2013-01-08 20:03:31
C/C++
#include <string>

int main() {
    goto etykieta;
    std::string bla;
    etykieta:
   
    return 0;
}
Bo to miało być tak :P
P-73387
bingo009
Temat założony przez niniejszego użytkownika
» 2013-01-08 20:05:34
To chyba zależy od kompilatora. Ja używam MinGW(który jest przecież portem GCC, więc mam to samo co i ty) i też nic nie mówił. Pewnie DejaVu używa Visual Studio. Podobna sprawa była z:
C/C++
int zmienna;
cin >> zmienna;
int tablica[ zmienna ];

Niektóre kompilatory też nic nie mówiły. Dobra starczy o goto, a co na temat zmiennych globalnych? Na wikipedii poczytam, ale chcę poznać zdanie programistów.
P-73388
crash
» 2013-01-08 20:06:26
Poza tym, że się nie kompiluje, ma jakieś przesłanie :D ?
P-73389
DejaVu
» 2013-01-08 20:06:40
Może na zmienne globalne osobny temat?
P-73390
bingo009
Temat założony przez niniejszego użytkownika
» 2013-01-08 20:07:05
Ok, będzie nowy temat.
P-73391
m4tx
» 2013-01-08 20:07:46
@DejaVu,
Eh, a my się z POKNCSU głowiliśmy na IRC-u "wtf, czemu to by się niby miało nie skompilować"... :P

*POKNCSU - Pewna Osoba Która Nie Chce Się Ujawnić.
P-73392
DejaVu
» 2013-01-08 20:09:41
Przesłanie jest takie, że używanie goto w większości przypadków zaburza czytanie kodu. Ponadto może wymagać migracji niektórych zmiennych do innego scope-a, aby było możliwe wykonanie skoku analogicznego do tego, który został przedstawiony.
P-73394
McAffey
» 2013-01-08 23:43:44
Tak jak wyżej mówi DejaVu poprzez goto kod staje się nieczytelny, poza tym w jakiś tam sposób utrudniasz robotę kompilatorowi. I w zdecydowanej większości przypadków, da się problem rozwiązać bez używania goto, dlatego na ogół uważa się, iż (nadmierne) korzystanie z goto źle świadczy o programiście. Oczywiście czasem, zdarza się że skorzystanie z goto jest dobrym rozwiązaniem, niemniej jednak są to bardzo rzadkie sytuacje.
P-73424
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona