Come si passa per riferimento in C #?

Jan 18 2021

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

0___________ Jan 18 2021 at 08:37

In C # hai una refparola chiave speciale

void foo(ref int x)
{
    x = x + 45;
}