Bardzo, bardzo, bardzo kiepski przykład. Powiem rekontra!
Gdybym mógł, powiedziałbym: - wybacz im ojcze, bo nie wiedzą co czynią.
W pierwszym przykładzie deklarujesz statyczną tablicę globalną, więc w drugim, powinieneś analogicznie zadeklarować [odpowiednio dużą] statyczną tablicę lokalną, a nie dynamiczną. W tym zadaniu nie ma też potrzeby kasowania [zerowania] zawartości tablicy ani na początku, ani w żadnym innym momencie. Wczytywanie powoduje za każdym razem nadpisywanie poprzedniej zawartości [a więc nie ważne, czy wcześniej były tam zera, czy inne śmieci]. Gdyby było inaczej, twoja globalna tablica musiałaby i tak być czyszczona wielokrotnie i to, że była zerowana na początku nic by nie pomogło. I to jest właśnie przykład wady [fujostwa] zmiennych globalnych. Autor kodu myśli, że jest ok, a przecież wcale nie jest
.
Możliwe, że to jest [p]omyłka literowa [zabrakło małego słówka "nie"], ale może jednak @reborn_withelm zupełnie nie wie co i oczym pisze?
Więc tylko powtórzę: wybacz im ojcze, bo nie wiedzą o czym mówią i piszą
PS
Mój przykład też jest słaby i dotyczy c++, ale poruszany problem nie dotyczy tylko c++ i nie napisałem też: jak nie wiesz co robić to..... Jeżeli chcesz, i uważasz, że zmienne globalne są dla CIebie wygodniejsze, to używaj.
Smutne jest tylko, że mieniący się informatykiem i wielkim dydaktykiem i propagatorem programowania w swoim wideokursie pokazuje zupełną indolencję i brak wiedzy na ten temat.
PS
Mógłbym podać przykłady, kiedy czasami ja sam używam zmiennych globalnych, bo oczywiście są fuj, ale jednak ...Mógłbym, ale nie mam zamiaru udowadniać, że wielbłąd jest garbaty lub nie i to twoja a nie moja decyzja jak programujesz czy raczej jak piszesz swoje kody i czy są na spoja czy gdziekolwiek indziej i na inną okazję. Chociaż przecież na spoju, powinieneś uczyć się i utrwalać dobrą praktykę programowania. Spoj tego nie ocenia, ale to TY bądż swoim własnym sędzią.