Forskellen Mellem Ude Og Ref I C

Indholdsfortegnelse:

Forskellen Mellem Ude Og Ref I C
Forskellen Mellem Ude Og Ref I C

Video: Forskellen Mellem Ude Og Ref I C

Video: Forskellen Mellem Ude Og Ref I C
Video: Панельная дискуссия | Специфика медицинских данных и её влияние на обучение и оценку ML-моделей 2024, Kan
Anonim

Nøgleforskel - ud vs ref i C #

C # er et moderne programmeringssprog udviklet af Microsoft. Det bruges til at udvikle forskellige applikationer til desktop, web og mobil. Funktioner eller metoder er et begreb i programmering. Den gruppe udsagn, der bruges til at udføre en bestemt opgave, er kendt som en funktion eller en metode. I C # -programmer begynder udførelsen fra main (). Det er et eksempel på en metode. Når du kalder en metode, overføres data til metoden eller modtages fra metoden. Den metode, der kalder på den nye metode, kaldes metoden. Den nye metode er kendt som den kaldte metode. C # bruger parametre til at styre de passerende værdier og få resultatet tilbage. De er værdiansatte parametre, outputparametre og referenceparametre. Værdiparametrene bruges til at overføre parametre til metoden efter værdi. Referenceparametrene bruges til at overføre parametre til metoden ved henvisning. Outputparametrene bruges til at sende resultatet tilbage fra metoden. I C # bruges out-nøgleord til outputparametre, og ref-nøgleord bruges til at referere til parametre. Hovedforskellen mellem ud og ref i C # er, at ud er et nøgleord, der bruges til at henvise en outputparameter, der bruges til at overføre resultater fra den kaldte metode til kaldemetoden, mens ref er et nøgleord til at henvise til en referenceparameter, der bruges til at videregive data fra opkaldsmetode til kaldet metode og modtagelse af data fra den kaldte metode til opkaldsmetode.out er et nøgleord, der bruges til at henvise en outputparameter, der bruges til at overføre resultater fra den kaldte metode til kaldemetoden, mens ref er et nøgleord til at henvise til en referenceparameter, der bruges til at overføre data fra kaldemetode til kaldet metode og til at modtage dataene fra den kaldte metode til kaldemetoden.out er et nøgleord, der bruges til at henvise til en outputparameter, der bruges til at overføre resultater fra den kaldte metode til kaldemetoden, mens ref er et nøgleord til at henvise til en referenceparameter, der bruges til at overføre data fra opkaldsmetode til kaldet metode og til at modtage dataene fra den kaldte metode til kaldemetoden.

INDHOLD

1. Oversigt og nøgleforskel

2. Hvad er ude i C #

3. Hvad er ref i C #

4. Ligheder mellem ud og ref i C #

5. Sammenligning side om side - ud vs ref i C # i tabelform

6. Resume

Hvad er der ude i C #?

Syntaksen for funktion eller en metode er som følger. En metode har et antal elementer såsom metodens navn, parameterliste, returtype og adgangsspecifikator.

(parameterliste)

{// erklæringer, der skal udføres

}

Hver metode har en unik metode til at foretage funktionskaldet. De eksekverbare udsagn er inde i krøllede seler. Returtypen forklarer, om funktionen returnerer en værdi eller ej. Når der ikke er nogen returtype, kaldes den ugyldig. Adgangsspecifikator bruges til at specificere metoden tilgængelighed i applikationen. Parametrene bruges til at modtage eller videregive data til metoden. Der kan også være metoder uden parametre. Parametre kan være værdiansatte parametre, outputparametre eller referenceparametre.

Forskellen mellem ude og ref i C #
Forskellen mellem ude og ref i C #

Outputparametrene bruges til at overføre resultaterne til opkaldsmetoden. Til dette skal parameteren erklæres med nøgleordet ude. Outputparameteren opretter ikke en ny lagerplacering. Generelt returnerer en metode en værdi. Men i C # er det muligt at returnere to værdier fra en funktion ved hjælp af outputparametre. Se nedenstående program.

namespace-applikation1 {

offentlig klasseberegning {

offentlig tom visning (ud int a, out int b) {

int-værdi = 5;

a = værdi;

b = værdi;

a = a * a;

b = b * b;

}

offentlig statisk ugyldig hoved (String args) {

int-værdi1 = 10, værdi2 = 20;

Beregning cal = ny Beregning ();

cal.display (ud værdi1, ud værdi2);

Console. ReadLine ();

}

}

}

Displayfunktionen kaldes fra hovedmetoden. Værdien 1 og værdi to har 10 og 20, men de tages ikke med i metoden. Værdien af a er 25 og værdien af b er også 25 i funktionen. Derfor returneres disse værdier. Når du udskriver værdi 1 og værdi 2, giver den ikke 10 og 20. I stedet udskrives den 25 og 25. Brug af det udgående nøgleord kan flere værdier returneres fra metoden.

Hvad er ref i C #?

Når parametre sendes efter værdi, oprettes der en ny lagerplacering for hver parameter. De faktiske parametre, der blev sendt fra hovedprogrammet, ændres ikke. I stedet kopieres disse værdier til et separat sted. Disse nye variable kopier kaldes formelle parametre. Se nedenstående kode.

namespace-applikation1 {

offentlig klasseberegning {

offentlig tomrumsudskiftning (int x, int y) {

int temp;

temp = x;

x = y;

y = temp;

}

offentlig statisk ugyldig hoved (String args) {

Beregning cal = ny Beregning ();

int p = 2;

int q = 3;

cal.swap (p, q);

Console. WriteLine (p);

Console. WriteLine (q);

Console. ReadLine ();

}

}

}

I henhold til ovenstående program har beregningsklassen en metodeudskiftning (). I hovedprogrammet oprettes et objekt af typen Beregning. Der er to værdier som p og q. Variablen p har værdi 2 og q variabel har værdi 3. Disse to værdier overføres til swap-metoden. I swap-metoden kopieres værdien 2 til variabel x, og værdi 3 kopieres til variabel y. Ved hjælp af temp-variablen byttes værdierne ud. Tilbage i hovedprogrammet, når du udskriver p og q, byttes værdierne ikke ud. P-værdien er stadig 2, og q-værdien er 3. Selv i swap-metoden byttes værdier ud, men afspejles ikke i hovedprogrammet.

I modsætning til overførselsværdier som ovenfor er det muligt at overføre parametre ved reference. En referencevariabel er en henvisning til hukommelsesplaceringen. Der er ikke oprettet nogen ny hukommelsesplacering. Ændringerne i metoden afspejles i hovedprogrammet. I C # henvises referenceparametrene ved hjælp af ref-nøgleord. Se nedenstående program.

namespace-applikation1 {

offentlig klasseberegning {

offentlig tomrumsudskiftning (ref int x, ref int y) {

int temp;

temp = x;

x = y;

y = temp;

}

offentlig statisk ugyldig hoved (String args) {

Beregning cal = ny Beregning ();

int p = 2;

int q = 3;

cal.swap (ref p, ref q);

Console. WriteLine (p);

Console. WriteLine (q);

Console. ReadLine ();

}

}

}

I henhold til ovenstående program har klassen Beregning swap-metoden. I hovedprogrammet oprettes et objekt af typen Beregning. De er to variabler såsom p og q. P-variablen har værdien 2, og q-variablen har værdien 3. I stedet for at overføre værdier overføres henvisningen til hukommelsesplaceringerne for p og q til metoden. Disse referencevariabler henvises ved hjælp af ref. I swap-metoden foretages ændringerne i stedet for at kopiere værdierne til en ny placering til de faktiske parametre. Når du udskriver p- og q-værdierne i hovedprogrammet, giver det de udskiftede værdier. Nu er p-værdien 3 og q-værdien er 2.

Hvad er ligheden mellem ude og ref i C #?

Begge er nøgleord, der bruges til at henvise parametrene for en metode

Hvad er forskellen mellem ude og ref i C #?

Diff artikel midt foran bordet

ud vs ref i C #

Out er et nøgleord i C #, der bruges til at henvise til en outputparameter. Det bruges til at overføre resultaterne fra en kaldet metode til at kalde metoden. Ref er et nøgleord i C #, der bruges til at henvise til en referenceparameter. Det bruges til at overføre data fra opkaldsmetode til kaldet metode og til at returnere data fra den kaldte metode til kaldemetode.
Funktionalitet
Når du bruger nøgleordet ud, kan dataene videregives fra kaldemetode til den kaldte metode. Men disse data kasseres. Det bruges til at overføre resultatet til kaldemetoden fra den kaldte metode. Når du bruger nøgleordet ref, overføres dataene fra kaldemetode til den kaldte metode, og de manipulerede data sendes tilbage til kaldemetoden.
Videregivelse af data
Når du bruger nøgleordet ud, overføres dataene på en måde, der kaldes en metode til den kaldende metode. Når du bruger nøgleordet ref, overføres dataene på to måder, fra kaldemetode til den kaldte metode og fra kaldet metode til den kaldende metode.

Resumé - ud vs ref i C #

Når man påberåber en metode, kan det være nødvendigt at overføre værdierne til metoden og få resultaterne fra metoden tilbage. C # har forskellige parametre for at opnå det. Værdiparametrene bruges til at overføre parametre til metoden efter værdi. Referenceparametrene bruges til at overføre parametre til metoden ved henvisning. Outputparametrene bruges til at sende resultatet tilbage fra metoden. I C # bruges out-nøgleord til outputparametre, og ref-nøgleord bruges til at referere til parametre. Forskellen mellem ud og ref i C # er, at ud er et nøgleord, der bruges til at henvise til en outputparameter, der bruges til at overføre resultater fra kaldet metode til kaldemetode, mens ref er et nøgleord til at henvise til en referenceparameter, der bruges til at overføre data fra kaldemetode til kaldet metode og modtagelse af data fra den kaldte metode til kaldemetode.

Download PDF af out vs ref i C #

Du kan downloade PDF-versionen af denne artikel og bruge den til offlineformål som pr. Citatnote. Download venligst PDF-versionen her: Forskellen mellem ud og ref i C #

Anbefalet: