Premetto che sono alle prime armi col C++.
Ho letto in vari testi che per poter dichiarare un'array statico ho bisogno, già in fase di compilazione, di conoscerne la dimensione. Ovvero, non ho la possibilità, in runtime, di inserire la dimensione a seconda delle necessità.
In pratica, il codice seguente non dovrebbe nemmeo essere compilato:
#include <iostream>
using namespace std;
int main()
{
int n;
cout << "Inserire la dimensione dll'array: ";
cin >> n;
int array[n];
cout << "\n\nInserire gli elementi dll'array: \n";
for (int i=0; i<n; i++) cin >> array[i];
cout << "L'array inserito e': \n\n";
for (int i=0; i<n; i++) cout << array[i] << '\n';
system("PAUSE");
return 0;
}
[/color]
Invece, non solo viene compilato, ma l'eseguibile risultante funziona perfettamente.
Sto forse studiando su libri obsoleti?