Come si passa per riferimento in C #?
Vengo da uno sfondo C incorporato e sto cercando di imparare C #. Spesso trovo difficile capire esattamente come posso passare i dati tra classi e moduli per riferimento. Venendo da C, sono abituato alla capacità di avere una struttura che incapsula tutti i dati necessari per un insieme di funzioni e di essere in grado di passare questi dati alle funzioni secondo necessità. Non riesco nemmeno a pensare a come utilizzerei una tecnica simile in C #.
Trovo molto difficile capire come esattamente la memoria viene "mappata" nell'ambiente C #. Ad esempio, ho visto che puoi usare application.openforms per trovare un modulo che potrebbe essere aperto ma non è sempre chiaro come recuperare i dati da un controllo su questo modulo.
Infine, potrei utilizzare alcuni consigli sulle migliori pratiche per la creazione di nuove istanze di moduli. È meglio farlo quando necessario o quando viene caricato il mio primo modulo? Ho appena imparato a gestire gli eventi in modo efficace, quindi se posso imparare a gestire i dati nel mio programma in modo più efficace dovrei essere in grado di iniziare a lavorare su alcune idee che ho. Mi sentirei molto più a mio agio se avessi solo dei suggerimenti con cui lavorare!
Qualsiasi aiuto è apprezzato, grazie!
Risposte
In C # hai una ref
parola chiave speciale
void foo(ref int x)
{
x = x + 45;
}