1. randomize non è né una funzione né una parola chiave standard del C++; per inizializzare il generatore di numeri casuali basta srand.
2. cin non ti consente di attendere la pressione di singoli tasti, ma piuttosto di acquisire stringhe, caratteri o altri tipi di dati; in ogni caso in tutte le funzioni e le classi di input del C e del C++ l'utente deve premere Invio dopo aver inserito il testo. Per attendere la pressione di singoli tasti devi usare funzioni non incluse nello standard C/C++, come la _getch().
Ecco un esempio:
codice:
#include <iostream>
#include <conio.h>
using namespace std;
 
int main()
{
    int ch;
    cout<<"Premi ESC per uscire."<<endl;
    do
    {
        ch=_getch();
        if(ch==0 || ch==0xE0) //è stato premuto un tasto-funzione
        {
            cout<<"Hai premuto un tasto funzione: ";
            switch(ch=_getch())
            {
                case 75:
                    cout<<"freccia sinistra";
                    break;
                case 77:
                    cout<<"freccia destra";
                    break;
                case 72:
                    cout<<"freccia in alto";
                    break;
                case 80:
                    cout<<"freccia in basso";
                    break;
                default:        
                    cout<<"sconosciuto ("<<ch<<")";
            }
            cout<<endl;
        }
        else
        {
            cout<<"Hai premuto un tasto normale: "<<(char)ch<<endl;        
        }
    } while(ch!=27);
    return 0;
}
. Tieni conto però che essendo una funzione non standard il suo comportamento potrebbe variare a seconda del compilatore e della piattaforma su cui la utilizzi. Il mio esempio è stato collaudato con Microsoft Visual C++ .NET 2003 su Windows.