Como você passa por referência em C #?

Jan 18 2021

Estou vindo de um plano de fundo C incorporado e estou tentando aprender C #. Muitas vezes acho difícil entender como exatamente posso passar dados entre classes e formulários por referência. Vindo de C, estou acostumado com a capacidade de ter uma estrutura que encapsula todos os dados necessários para um conjunto de funções e ser capaz de passar esses dados para funções conforme necessário. Não consigo nem começar a pensar em como usaria uma técnica semelhante em C #.

Estou achando muito difícil entender como exatamente a memória é "mapeada" no ambiente C #. Por exemplo, eu vi que você pode usar application.openforms para localizar um formulário que pode estar aberto, mas nem sempre é claro como recuperar dados de um controle neste formulário.

Por último, eu poderia usar alguns conselhos sobre as melhores práticas para a criação de novas instâncias de formulários. É melhor fazer isso conforme necessário ou quando meu primeiro formulário for carregado? Acabei de aprender como lidar com eventos de forma eficaz, portanto, se puder aprender a gerenciar dados em meu programa de forma mais eficaz, poderei começar a trabalhar em algumas ideias que tenho. Eu me sentiria muito mais confortável se apenas tivesse dicas para trabalhar!

Qualquer ajuda é apreciada, obrigado!

Respostas

0___________ Jan 18 2021 at 08:37

Em C #, você tem uma refpalavra-chave especial

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