Grazie per la correzione.
oregon ha scritto:
smalldragon ha scritto:
c'è il rischio di perderle subito dopo la definizione.
?
Che vuoi dire?
volvo dire che se non mi faccio restituire l'indirizzo con la return o non mi copio il valore dell'indirizzo in una variabile referenziata, pur sapendo il nome, la varibile sarebbe inutilizzabile e quindi andrebbe persa con l'aggravante dei buchi di memoria.
ergo non conviene molto visto che dovrei utilizzare comunque un riferimento globale per poterla usare.
conviene solo per array multi dimensionali o strutture molto grandi per i quali si avrebbe un leggero aumento delle prestazioni.
comunque
il problema era nato dal fatto che io stavo cercando un sistema per definirmi una volta sola le variabili e non dovermele portare tramite riferimenti o extern "sempre a presso" in tutte le funzioni dove venivano utilizzate cosi da ridurre i parametri nelle funioni.
per esempio:
int testo(SDL_Windows **txtwin,SDL_Render **txtren,int &moda,int &wh,int &hh);
int ristampa(TTF_Font* carattere,int grandezza,int matvideo[xx] [yy] [3],
SDL_Render *txtren,int moda,int maxvtab,int maxhtab);
int visualizza(TTF_Font* carattere,SDL_Renderer* txtren,char* scritta,
int colo,int cola,int moda,int xtab,int ytab);
essendoci variabili comuni tra le 3 funzioni volevo definirmi a parte queste ultime e poi utilizzarle liberamente all'interno delle funzioni.
siccome in assembler c'era la possibilità di fare ciò credevo,sbagliando, che
l'allocazione dinamica essendo molto simile a questa tecnica assembler pensavo di aver trovato la soluzione ma evidentemente mi sbagliavo.