Jak uprościć program?
Ostatnio zmodyfikowano 2010-10-17 17:50
Elaine |
» 2010-10-16 15:32:26 jeśli zmiennych globalnych nie powinno się używać to czemu tam jest napisane o przedrostku 'g'? |
By było na kilometr widać, że zmienna globalna, czyli coś dziwnego. W sumie niepotrzebne, dobre IDE potrafią pokolorować zmienne globalne na jakiś wyróżniający się kolor. |
|
michalp |
» 2010-10-16 15:35:23 @ison: Co do konsekwencji zmiennych globalnych z punktu widzenia sprzętu może ci powiedzieć ktoś kto zna się na sprzęcie. Np jednym z problemów może być przepełnienie stosu.
Ja ci mogę wskazać prosty powód taki jak przesłanianie nazw:
#include <iostream>
int liczba = 101; int main() { int liczba = 102; return 0; }
|
|
Elaine |
» 2010-10-16 15:38:08 Np jednym z problemów może być przepełnienie stosu. |
Przepełnienie stosu i zmienne globalne...? Nie bardzo to widzę.
#include <iostream>
int liczba = 101; int main() { int liczba = 102; return 0; } |
Nieprawda: int wtf = 4; int main() { int wtf = 8; ::wtf = 11; } |
|
ison |
» 2010-10-16 15:40:46 @michalp przecież już były wywody na temat że przed zmienną globalną pisze się 'g' dla braku kolizji nazw... (tak jak to zrobiłem w moim 1 kodzie) |
|
michalp |
» 2010-10-16 15:43:46 Przepełnienie stosu i zmienne globalne...? Nie bardzo to widzę. |
Mówiłem że się nie znam ;)
Nieprawda:
int wtf = 4; int main() { int wtf = 8; ::wtf = 11; } |
Tak wiem, że do globalnej przestrzeni można łatwo się odwołać, ale chodziło mi raczej o to, że w wielu przypadkach prowadzi to do błędu (typu upss.. zapomniałem, że mam taką zmienną globalną. A tym bardziej jeżeli kod nie jest nasz)). |
|
ison |
» 2010-10-16 15:56:09 czyli jednak nikt nie zna powodu dla którego użycie zmiennej globalnej w 10 linijkowym kodzie jest złe? |
|
SeaMonster131 |
» 2010-10-16 17:32:59 Nikt nie zna bo to nie jest złe :P |
|
Elaine |
» 2010-10-16 17:50:19 A dlaczego użycie zmiennych globalnych w kodzie, który ma 10 linii ma być dobre? ;>
Jeśli dobrego powodu nie ma, to lepiej użyć zmiennych lokalnych, w końcu nie robi to różnicy, a zmienne lokalne nie są generally considered evil. ;> |
|
1 2 « 3 » 4 5 |