Złe praktyki tworzenia "dynamicznych tablic"
Ostatnio zmodyfikowano 2014-01-18 11:22
alixir Temat założony przez niniejszego użytkownika |
Złe praktyki tworzenia "dynamicznych tablic" » 2014-01-17 07:31:40 Witam Bardzo często przeglądając forum napotykam na kod typu: int n; cout << "Podaj wielkość tablicy:"; cin >> n; int tab[ n ];
Może kompilator typu Dev łyknie taki zapis, ale chciałbym zwrócić uwagę, że jest to zapis niepoprawny i nie ma nic wspólnego z tworzeniem dynamicznych tablic, a skoro forum przyświeca idea nauczania to może warto byłoby zwracać na to uwagę. |
|
maly |
» 2014-01-17 08:07:51 To jest wałkowane na forum cały czas ale podejrzewam że dopóki komuś takie coś działa to ma to prawdopodobnie w... |
|
pekfos |
» 2014-01-17 08:16:23 Rozmiar takich tablic w C++ musi mieć stały, znany w czasie kompilacji, rozmiar. |
|
maly |
» 2014-01-17 08:32:16 Rozmiar takich tablic w C++ musi mieć stały, znany w czasie kompilacji |
No właśnie nie musi, chyba wszystkie MinGW pozwalają na takie użycie. |
|
pekfos |
» 2014-01-17 15:15:04 Kompilatory pozwalają na różne rzeczy, co wcale nie znaczy, że jest to poprawne. |
|
maly |
» 2014-01-17 15:56:32 Jeśli ktoś świadomie tego używa to nie widzę problemu, można to uznać za rozszerzenie kompilatora. |
|
SeaMonster131 |
» 2014-01-17 16:18:14 To nie jest rozszerzenie kompilatora. Z tego co wiem, w takim przypadku zachowanie programu jest niezdefiniowane i dlatego musisz użyć np. tablic dynamicznych. |
|
maly |
» 2014-01-17 16:30:25 Wiem że to nie jest rozszerzenie, wiem że to jest błędne użycie tablic i nie stosuję tego, jednak z tego co zauważyłem to bezproblemowo działa lub niewiem jak spowodować owo niezdefiniowane zachowanie programu.
|
|
« 1 » 2 |