Utilizando passagem de parâmetros por referência em classes » Histórico » Versão 2
Gabriel Borges da Conceição, 06/06/2019 11:46 h
1 | 1 | Gabriel Borges da Conceição | # Utilizando passagem de parâmetros por referência em classes |
---|---|---|---|
2 | |||
3 | 2 | Gabriel Borges da Conceição | Todos os arquivos do projeto que será utilizado de exemplo neste tutorial estão disponíveis para serem baixados em ReferenceWiki.rar, adicionado à wiki. |
4 | 1 | Gabriel Borges da Conceição | |
5 | 2 | Gabriel Borges da Conceição | |
6 | |||
7 | Primeiramente, vamos mostrar como utilizar as ferramentas necessárias à passagem de parâmetros por referência em LabVIEW de forma mais geral, com um Numeric. E depois partiremos para a utilização em classes e com o objetivo de compartilhar informação entre whiles independentes, o qual é o objetivo de usarmos essa ferramenta na reformulação da arquitetura de software pela qual estamos passando. |
||
8 | |||
9 | |||
10 | Criamos uma VI chamada DataReferenceWithNumeric e fizemos situações parecidas, porém uma utilizando referência e a outra não: |
||
11 | |||
12 | ![](ExRef.png) |
||
13 | |||
14 | O que está acontecendo é: |
||
15 | No for loop de baixo, a cada iteração um valor entra e é incrementado de 1. Isso é feito 100 vezes. Porém, nada está alterando o valor de entrada, já que é uma constante. Então, em todas 100 iterações, entra o valor 0. |
||
16 | |||
17 | O for loop de cima faz a mesma coisa. A diferença é que ao entrar um valor e ser incrementado de 1, isso é escrito na referência criada para o nuemric double constant 0. Na iteração seguinte, como estamos lendo o valor a partir da referência da memória, recebemos o valor que foi incrementado e escrito na iteração anterior. Ou seja, a entrada do for muda a cada iteração. |
||
18 | |||
19 | Temos então o seguinte resultado: |
||
20 | ![](ResExRef.png) |