Belangrijkste verschil - uit versus ref in C #
C # is een moderne programmeertaal ontwikkeld door Microsoft. Het wordt gebruikt voor het ontwikkelen van verschillende applicaties voor desktop, web en mobiel. Functies of methoden is een concept bij programmeren. Die groep instructies die worden gebruikt om een specifieke taak uit te voeren, staat bekend als een functie of een methode. In C # -programma's begint de uitvoering vanaf main (). Het is een voorbeeld van een methode. Bij het aanroepen van een methode worden gegevens doorgegeven aan de methode of ontvangen van de methode. De methode die de nieuwe methode aanroept, wordt de methode genoemd. De nieuwe methode staat bekend als de aangeroepen methode. Voor het beheren van de doorgegeven waarden en het terughalen van het resultaat, gebruikt C # parameters. Het zijn gewaardeerde parameters, outputparameters en referentieparameters. De waardeparameters worden gebruikt om parameters per waarde in de methode door te geven. De referentieparameters worden gebruikt om parameters door middel van referentie aan de methode door te geven. De uitvoerparameters worden gebruikt om het resultaat van de methode terug te sturen. In C # wordt het trefwoord out gebruikt voor uitvoerparameters en wordt het trefwoord ref gebruikt om naar parameters te verwijzen. Het belangrijkste verschil tussen out en ref in C # is dat out een trefwoord is dat wordt gebruikt om een uitvoerparameter te verwijzen die wordt gebruikt om resultaten van de aangeroepen methode door te geven aan de aanroepende methode, terwijl ref een trefwoord is om een referentieparameter te verwijzen die wordt gebruikt om door te geven gegevens van de aanroepmethode naar de aangeroepen methode en om de gegevens van de aangeroepen methode naar de aanroepende methode te ontvangen.out is een trefwoord dat wordt gebruikt om een uitvoerparameter te verwijzen die wordt gebruikt om resultaten van de aangeroepen methode door te geven aan de aanroepende methode, terwijl ref een trefwoord is om een referentieparameter te verwijzen die wordt gebruikt om gegevens door te geven van de aanroepende methode naar de aangeroepen methode en om de gegevens te ontvangen van de aangeroepen methode naar de aanroepende methode.out is een trefwoord dat wordt gebruikt om een uitvoerparameter te verwijzen die wordt gebruikt om resultaten van de aangeroepen methode door te geven aan de aanroepende methode, terwijl ref een trefwoord is om een referentieparameter te verwijzen die wordt gebruikt om gegevens door te geven van de aanroepende methode naar de aangeroepen methode en om de gegevens te ontvangen van de aangeroepen methode naar de aanroepende methode.
INHOUD
1. Overzicht en belangrijkste verschil
2. Wat staat er in C #
3. Wat is ref in C #
4. Overeenkomsten tussen out en ref in C #
5. Vergelijking zij aan zij - uit versus ref in C # in tabelvorm
6. Samenvatting
Wat is er uit in C #?
De syntaxis voor functie of een methode is als volgt. Een methode heeft een aantal elementen zoals de naam van de methode, de parameterlijst, het retourneringstype en de toegangsspecificatie.
(parameterlijst)
{// instructies om uit te voeren
}
Elke methode heeft een unieke methode om de functie aan te roepen. De uitvoerbare instructies staan tussen accolades. Het retourtype legt uit of de functie een waarde retourneert of niet. Als er geen retourtype is, wordt dit ongeldig genoemd. Toegangsspecificatie wordt gebruikt om de toegankelijkheid van de methode in de toepassing te specificeren. De parameters worden gebruikt om gegevens te ontvangen of door te geven aan de methode. Er kunnen ook methoden zijn zonder parameters. Parameters kunnen gewaardeerde parameters, outputparameters of referentieparameters zijn.
De uitvoerparameters worden gebruikt om resultaten terug te sturen naar de aanroepende methode. Daarvoor moet de parameter worden gedeclareerd met het trefwoord out. De uitvoerparameter maakt geen nieuwe opslaglocatie aan. Over het algemeen retourneert een methode één waarde. Maar in C # is het mogelijk om twee waarden van een functie te retourneren met behulp van uitvoerparameters. Raadpleeg het onderstaande programma.
naamruimte applicatie1 {
openbare klasberekening {
public void display (out int a, out int b) {
int waarde = 5;
a = waarde;
b = waarde;
a = a * a;
b = b * b;
}
public static void main (String args) {
int waarde1 = 10, waarde2 = 20;
Berekening cal = nieuwe berekening ();
cal.display (uit waarde1, uit waarde2);
Console. ReadLine ();
}
}
}
De weergavefunctie wordt aangeroepen vanuit de hoofdmethode. De waarde1 en waarde twee hebben 10 en 20, maar ze worden niet meegenomen in de methode. De waarde van a is 25 en de waarde van b is ook 25 in de functie. Daarom worden die waarden geretourneerd. Bij het afdrukken van waarde1 en waarde2 geeft het geen 10 en 20. In plaats daarvan worden 25 en 25 afgedrukt. Met het trefwoord out kunnen meerdere waarden van de methode worden geretourneerd.
Wat is ref in C #?
Bij het doorgeven van parameters op waarde, wordt voor elke parameter een nieuwe opslaglocatie gemaakt. De feitelijke parameters die vanuit het hoofdprogramma zijn verzonden, veranderen niet. In plaats daarvan worden die waarden naar een aparte locatie gekopieerd. Die nieuwe variabelekopieën worden formele parameters genoemd. Raadpleeg de onderstaande code.
naamruimte applicatie1 {
openbare klasberekening {
openbare ongeldige swap (int x, int y) {
int temp;
temp = x;
x = y;
y = temp;
}
public static void main (String args) {
Berekening cal = nieuwe berekening ();
int p = 2;
int q = 3;
cal.swap (p, q);
Console. WriteLine (p);
Console. WriteLine (q);
Console. ReadLine ();
}
}
}
Volgens het bovenstaande programma heeft de klasse Calculation een methode swap (). In het hoofdprogramma wordt een object van het type Berekening gemaakt. Er zijn twee waarden, zoals p en q. De variabele p heeft waarde 2 en q variabele heeft waarde 3. Deze twee waarden worden doorgegeven aan de swap-methode. In de swap-methode wordt de waarde 2 gekopieerd naar variabele x en wordt waarde 3 gekopieerd naar variabele y. Met behulp van de tijdelijke variabele worden de waarden omgewisseld. Terug in het hoofdprogramma, bij het afdrukken van p en q, worden de waarden niet verwisseld. De p-waarde is nog steeds 2 en de q-waarde is 3. Zelfs bij de swap-methode worden de waarden omgewisseld, maar dit wordt niet weerspiegeld in het hoofdprogramma.
In tegenstelling tot het doorgeven van waarden zoals hierboven, is het mogelijk om parameters door middel van verwijzing door te geven. Een referentievariabele is een verwijzing naar de geheugenlocatie. Er is geen nieuwe geheugenlocatie gemaakt. De veranderingen in de methode zijn terug te vinden in het hoofdprogramma. In C # worden de referentieparameters verwezen met het trefwoord ref. Raadpleeg het onderstaande programma.
naamruimte applicatie1 {
openbare klasberekening {
openbare ongeldige swap (ref int x, ref int y) {
int temp;
temp = x;
x = y;
y = temp;
}
public static void main (String args) {
Berekening cal = nieuwe berekening ();
int p = 2;
int q = 3;
cal.swap (ref p, ref q);
Console. WriteLine (p);
Console. WriteLine (q);
Console. ReadLine ();
}
}
}
Volgens het bovenstaande programma heeft de klasse Calculation de swap-methode. In het hoofdprogramma wordt een object van het type Berekening gemaakt. Het zijn twee variabelen zoals p en q. De variabele p heeft de waarde 2 en de variabele q de waarde 3. In plaats van waarden door te geven, wordt de verwijzing naar de geheugenlocaties van p en q doorgegeven aan de methode. Die referentievariabelen worden verwezen met ref. In de swap-methode worden de wijzigingen niet doorgevoerd in de werkelijke parameters, in plaats van de waarden naar een nieuwe locatie te kopiëren. Bij het afdrukken van de p- en q-waarden van het hoofdprogramma, worden de verwisselde waarden weergegeven. Nu is de p-waarde 3 en de q-waarde is 2.
Wat is de overeenkomst tussen out en ref in C #?
Beide zijn trefwoorden die worden gebruikt om de parameters van een methode te verwijzen
Wat is het verschil tussen out en ref in C #?
Diff Artikel Midden voor Tafel
uit vs ref in C # |
|
De out is een trefwoord in C # dat wordt gebruikt om naar een uitvoerparameter te verwijzen. Het wordt gebruikt om de resultaten van een aangeroepen methode door te geven aan het aanroepen van de methode. | De ref is een trefwoord in C # dat wordt gebruikt om naar een referentieparameter te verwijzen. Het wordt gebruikt om gegevens van de aanroepmethode naar de aangeroepen methode door te geven en om gegevens van de aangeroepen methode naar de aanroepende methode terug te sturen. |
Functionaliteit | |
Wanneer u het sleutelwoord out gebruikt, kunnen de gegevens worden doorgegeven van de aanroepende methode naar de aangeroepen methode. Maar die gegevens worden weggegooid. Het wordt gebruikt om het resultaat door te geven aan de aanroepende methode vanuit de aangeroepen methode. | Wanneer het trefwoord ref wordt gebruikt, worden de gegevens van de aanroepende methode naar de aangeroepen methode doorgegeven en worden de gemanipuleerde gegevens teruggestuurd naar de aanroepende methode. |
Doorgeven van gegevens | |
Wanneer u het sleutelwoord out gebruikt, worden de gegevens op één manier doorgegeven, namelijk een aangeroepen methode naar de aanroepende methode. | Bij gebruik van het trefwoord ref, worden de gegevens op twee manieren doorgegeven, namelijk van de aanroepende methode naar de aangeroepen methode en van de aangeroepen methode naar de aanroepende methode. |
Samenvatting - uit versus ref in C #
Bij het aanroepen van een methode kan het nodig zijn om de waarden in de methode door te geven en de resultaten van de methode terug te krijgen. C # heeft verschillende parameters om dat te bereiken. De waardeparameters worden gebruikt om parameters per waarde in de methode door te geven. De referentieparameters worden gebruikt om parameters door middel van referentie aan de methode door te geven. De uitvoerparameters worden gebruikt om het resultaat van de methode terug te sturen. In C # wordt het trefwoord out gebruikt voor uitvoerparameters en wordt het trefwoord ref gebruikt om naar parameters te verwijzen. Het verschil tussen out en ref in C # is dat, out een trefwoord is dat wordt gebruikt om een uitvoerparameter te verwijzen die wordt gebruikt om resultaten van de aangeroepen methode door te geven aan de aanroepende methode, terwijl ref een trefwoord is om een referentieparameter te verwijzen die wordt gebruikt om gegevens door te geven van aanroepmethode naar aangeroepen methode en om de gegevens van de aangeroepen methode naar aanroepende methode te ontvangen.
Download de PDF van out vs ref in C #
U kunt de pdf-versie van dit artikel downloaden en offline gebruiken volgens de citatienota. Download de pdf-versie hier: Verschil tussen uit en ref in C #