Salve a tutti.
Sto imparando il C++ da un pò di tempo.
Ma ancora non mi è chiaro l'utilizzo dei puntatori, dove e perché applicarli.
Sò benissimo a cosa servono. ( puntare determinate celle di memoria o un oggetto)
Sò utilizzarli, dichiararli e manipolarli. Ma ancora non capisco il loro uso
principalmente dove venga fatto.
Mi spiego meglio...
Se voglio modificare un determinato valore ad un certo indirizzo di memoria.
Sò che bisogna muoversi in un determinato modo.
Un esempio.
Codice PHP:
DWORD indirizzo = 0x004D2038;
DWORD offset = 0x3c;
int valore
DWORD valore_indirizzo = ReadProcessMemory(_hwnd,(void*)indirizzo+offset,&valore,sizeof(valore),NULL);
Altro esempio
Codice PHP:
struct blocco
{
int id;
int x;
int y;
}
QList<blocco> *blocchi = new QList<blocco>();
blocco b;
b.id = 0;
b.x = 10;
b.y = 10;
bloccchi->Insert(0,b);
in questo esempio ho dichiarato blocchi come puntatore.
ma avrebbe funzionato ugualmente anche se non fosse stato un puntatore.
stessa cosa se provo ad istanziare una classe.
Posso farlo sia con un puntatore o una normalissima variabile.
Ed in infine per ottenere sempre la stessa e medesima funzione o oggetto.
La domanda che mi viene da chiedere è:
Perché utilizzarli quando si può anche evitare di farlo?
chiedo scusa se magari potete interpretare il mio messaggio come da ignorante.
Ma vorrei solo capire dove e come utilizzarli ma sopratutto perché utilizzarli.
Mi sarebbe di aiuto anche una breve guida.
Grazie in anticipo.