Eksempel 01
Nå som filen allerede er opprettet, åpner vi den i Text Editor. La oss starte med det første eksemplet illustrasjonen for å bruke nøkkelordet "Ref" i koden. Så vi har brukt C# standardstrukturen for koden, som inkluderer bruk av "system" -biblioteket, noen navneområder, klasse og dens funksjoner. Vi har kalt navneområdet “Test” og kåret til klassen 'Test' også. Innenfor denne klassen har vi brukt de to enkle metodene til C#. En av dem er den innebygde, Main () -funksjonen, og den andre er den nyopplagte brukerdefinerte “Modify” -funksjonen.
Som vi alle vet, initialiserer programutførelsen seg alltid fra starten av Main () -metoden. Når vi utfører koden, blir main () -funksjonen utført først. Så rett etter at utførelsen startet, ble initialiseringen av en variabel “V” laget og tildelt en verdi på 20. Det kommer "konsoll" -klassen til C# som gir oss funksjonen "WritLine" for å vise dataene som en utgang på skjermen. Vi har brukt denne funksjonen for å vise verdien av variabel “V” på skallet vårt om et sekund. Etter å ha vist verdien av variabel “V”, har vi passert denne variabelen som en referanse til funksjonen “Endre” med nøkkelordet “Ref”.
Nå, uansett hva endringer vil bli gjort i modifiseringsfunksjonen, vil også gjenspeile endringer i "V" -variabelen. Når vi tar en titt på "modifiser" -funksjonen, ble vi kjent. Denne variabelen “N” har referert til minneadressen til variabel “V” fra hoved- () -funksjonen. Verdien av "n" vil bli delt med 3 og lagret til variabelen "n", i.e. Etter hvert vil verdien av "V" bli brukt her. I modifiseringsfunksjonen har vi benyttet oss. Som kontroll er gitt til Main (), vil den siste WritLine () -funksjonen vise den oppdaterte verdien av variabel “V”.
Vi må ha "MCS" -kompilatoren og "Mono" -tiden for C# installert på Ubuntu 20.04 System. Vi har prøvd å bruke “MCS” -kompileringskommandoen for å kompilere denne koden. Koden "EXE" -filen ble opprettet, og vi har prøvd å utføre den med "mono" -instruksjon. Det viser seg at den opprinnelige verdien av variabel “V” er 20, og etter utførelsen av modifiseringsfunksjonen blir den 6 innenfor "modifiser" -funksjonen og tilbake i hoved- () -funksjonen.
Eksempel 02
La oss se på et annet C# Enkelt eksempel for å bruke nøkkelordet "Ref" for å utføre verdi som passerer med referanse. Denne gangen vil vi oppdatere koden vår ved å legge til 3 funksjoner i en klasse "test" i C# -koden. Innenfor Main () -metoden i dette programmet har vi initialisert to heltallvariabler i starten, i.e. x og y. Begge heltallvariablene inneholder de samme verdiene, i.e. 7. Vi har prøvd å vise verdiene til både variabler X og Y med "WritLine ()" -funksjonen til konsollklassen fra systembiblioteket.
Den første brukerdefinerte funksjonen, “Add1”, kalles ved å gi verdien “X”. Innenfor denne funksjonen har vi lagt 7 til den opprinnelige verdien av x. Etter at vi har kommet tilbake, vil vi vise verdien av “X” etter oppdateringen igjen. "Add2" -funksjonen kalles ved bestående variabel "y" som referanse med nøkkelordet "Ref". Det samme tilskuddet av 7 er gjort i denne funksjonsimplementeringen, og "Ref" nøkkelordet brukes i sin funksjonsdeklarasjonslinje. Når du kommer tilbake til hoved (), har verdien av "y" blitt vist ved hjelp av "WritLine ()" -funksjonen etter denne oppdateringen. La oss lagre denne koden først og deretter kjøre den.
Når vi blir samlet av "MCS" -spørsmålet om C# og utført av "Mono" -tiden, har vi fått utdataene som presentert. Verdien av "y" oppdateres fordi "ref" ble brukt mens "x" er uendret.
Eksempel 03
Innenfor vår siste illustrasjon vil vi bruke Two Classes -testen og "Ny". Den "nye" klassen startet fra Main () -funksjonen og initialiserte et objekt "T" for klassen "Test". "Test" -klassen inneholder erklæringen om to private variabler ", x" og "y", og den inneholder en parameterisert konstruktør ", test", initialisering av variabler "x" og "y". Når objektet "T" er opprettet, blir konstruktøren av "test" -klassen automatisk utført. Siden denne konstruktøren er parametrisert, har vi gitt den til verdier mens vi oppretter et objekt. Disse verdiene lagres i "x" og "y" -variablene.
Nå har vi passert et objekt “T” som en referanse til funksjonen “Endre” i “Test” -klassen med nøkkelordet “Ref”. Modify () -funksjonen bruker "Ref" nøkkelordet for å få "Test" -klasseobjektet som "OBJ" og bruker dette objektet for å øke verdien av variabel "x" med 7 og variabel "y" med 5. Etter å ha kommet tilbake til Main () -funksjonen til “New” -klassen, er WritLine () -funksjonen til systemet.Konsollklasse brukes til å vise at vi har oppdatert objektet og for å vise de oppdaterte verdiene. I den siste "WritLine ()" -funksjonserklæringen har vi brukt "T" -objektet til å kalle "getx" og "gety" -funksjonene fra "test" -klassen for å vise de oppdaterte verdiene. Mens vi ser på "getx ()" og "gety ()" -funksjonene fra "test" -klassen, har vi blitt kjent med at begge inneholder returerklæringen for å returnere deres spesifikke variable verdi, i.e. “X” og “Y”. La oss se utdataene fra dette skriptet etter å ha lagret det.
Etter utførelsen av kode har vi lært at verdiene til "X" og "Y" -variablene er blitt økt med suksess etter å ha passert objektene som en referanse ved hjelp av "Ref" nøkkelordet.
Konklusjon
Denne artikkelen brukes til å forklare formålet med å bruke nøkkelordet "Ref" i C# -programmering. Vi har diskutert de to første enkle C# -eksemplene for å utføre den variable verdien som går til den andre metoden ved begrepet verdiskasting ved å referere gjennom “Ref”. Det siste eksemplet handler om å passere klasseobjektet som en referanse til en annen metode i en annen klasse med "Ref" nøkkelordet. Alle eksemplene deler det samme konseptet med noen få vendinger og forskjellige beregninger.