Razlika između auta i ref u C

Sadržaj:

Razlika između auta i ref u C
Razlika između auta i ref u C

Video: Razlika između auta i ref u C

Video: Razlika između auta i ref u C
Video: 024 - Programski jezik C - Uvod u funkcije 2024, Juli
Anonim

Ključna razlika – out vs ref in C

C je moderan programski jezik koji je razvio Microsoft. Koristi se za razvoj različitih aplikacija za desktop, web i mobilne uređaje. Funkcije ili metode su koncept u programiranju. Ta grupa izraza koja se koristi za izvođenje određenog zadatka poznata je kao funkcija ili metoda. U C programima, izvršavanje počinje od main (). To je primjer metode. Prilikom pozivanja metode, podaci se prosljeđuju metodi ili primaju od metode. Metoda koja poziva novu metodu poznata je kao pozivanje metode. Nova metoda je poznata kao pozvana metoda. Za upravljanje vrijednostima koje se prosljeđuju i vraćanje rezultata, C koristi parametre. To su vrednovani parametri, izlazni parametri i referentni parametri. Parametri vrijednosti se koriste za prosljeđivanje parametara u metodu po vrijednosti. Referentni parametri se koriste za prosljeđivanje parametara metodi putem reference. Izlazni parametri se koriste za vraćanje rezultata iz metode. U C se ključna riječ out koristi za izlazne parametre, a ref ključna riječ se koristi za referenciranje parametara. Ključna razlika između out i ref u C je u tome što je out ključna riječ koja se koristi za upućivanje na izlazni parametar koji se koristi za prosljeđivanje rezultata od pozvane metode do pozivajuće metode, dok je ref ključna riječ za upućivanje na referentni parametar koji se koristi za prosljeđivanje podatke od poziva metode do pozvane metode i primanje podataka od pozvane metode do poziva metode.

Šta postoji u C?

Sintaksa za funkciju ili metod je sljedeća. Metoda ima niz elemenata kao što su naziv metode, lista parametara, tip povratka i specifikacija pristupa.

(lista parametara)

{ //izjave za izvršenje

}

Svaka metoda ima jedinstvenu metodu za pozivanje funkcije. Izvršni izrazi su unutar vitičastih zagrada. Tip povratka objašnjava da li funkcija vraća vrijednost ili ne. Kada ne postoji tip povratka, naziva se void. Specifikator pristupa se koristi za specificiranje pristupačnosti metode u aplikaciji. Parametri se koriste za primanje ili prosljeđivanje podataka metodi. Mogu postojati i metode bez parametara. Parametri mogu biti vrednovani parametri, izlazni parametri ili referentni parametri.

Razlika između out i ref u C
Razlika između out i ref u C

Izlazni parametri se koriste za vraćanje rezultata u metod pozivanja. Za to, parametar treba deklarirati sa ključnom riječi out. Izlazni parametar ne kreira novu lokaciju za pohranu. Generalno, metoda vraća jednu vrijednost. Ali u C, moguće je vratiti dvije vrijednosti iz funkcije koristeći izlazne parametre. Pogledajte program ispod.

namespace application1{

obračun javne klase{

javni nevažeći prikaz (out int a, out int b){

int value=5;

a=vrijednost;

b=vrijednost;

a=a a;

b=bb;

}

public static void main(String args){

int value1=10, value2=20;

Calculation cal=new Calculation();

cal.display(out value1, out value2);

Console. ReadLine();

}

}

}

Funkcija prikaza se poziva iz glavne metode. Vrijednost1 i vrijednost dva imaju 10 i 20, ali se ne uzimaju u metodu. Vrijednost a je 25, a vrijednost b je također 25 u funkciji. Stoga se te vrijednosti vraćaju. Kada ispisuje vrijednost1 i vrijednost2, neće dati 10 i 20. Umjesto toga, ispisat će 25 i 25. Korištenjem ključne riječi out višestruke vrijednosti se mogu vratiti iz metode.

Šta je ref u C?

Prilikom prosljeđivanja parametara po vrijednosti, kreira se nova lokacija za pohranu za svaki parametar. Stvarni parametri koji su poslani iz glavnog programa se ne mijenjaju. Umjesto toga, te vrijednosti se kopiraju na zasebnu lokaciju. Te nove kopije varijabli nazivaju se formalnim parametrima. Pogledajte kod ispod.

namespace application1{

obračun javne klase{

javna zamjena nevažećih (int x, int y){

int temp;

temp=x;

x=y;

y=temp;

}

public static void main(String args){

Calculation cal=new Calculation();

int p=2;

int q=3;

cal.swap(p, q);

Console. WriteLine(p);

Console. WriteLine(q);

Console. ReadLine();

}

}

}

Prema gore navedenom programu, klasa Calculation ima zamjenu metoda (). U glavnom programu kreira se objekat tipa Kalkulacija. Postoje dvije vrijednosti kao što su p i q. Varijabla p ima vrijednost 2, a varijabla q ima vrijednost 3. Te dvije vrijednosti se prosljeđuju u swap metodu. U swap metodi, vrijednost 2 se kopira u varijablu x, a vrijednost 3 se kopira u varijablu y. Koristeći temp varijablu, vrijednosti se zamjenjuju. Nazad u glavnom programu, prilikom štampanja p i q, vrednosti se ne menjaju. Vrijednost p je i dalje 2, a q vrijednost je 3. Čak i u swap metodi, vrijednosti se zamjenjuju, ali se ne odražavaju u glavnom programu.

Za razliku od prosljeđivanja vrijednosti kao što je gore, moguće je proslijediti parametre referencom. Referentna varijabla je referenca na memorijsku lokaciju. Nije stvorena nova memorijska lokacija. Promjene u metodi odražavaju se u glavnom programu. U C, referentni parametri se upućuju pomoću ključne riječi ref. Pogledajte program ispod.

namespace application1{

obračun javne klase{

javna zamjena nevažećih (ref int x, ref int y){

int temp;

temp=x;

x=y;

y=temp;

}

public static void main(String args){

Calculation cal=new Calculation();

int p=2;

int q=3;

cal.swap(ref p, ref q);

Console. WriteLine(p);

Console. WriteLine(q);

Console. ReadLine();

}

}

}

Prema gore navedenom programu, klasa Calculation ima metodu zamjene. U glavnom programu kreira se objekat tipa Kalkulacija. To su dvije varijable kao što su p i q. Varijabla p ima vrijednost 2, a varijabla q ima vrijednost 3. Umjesto prosljeđivanja vrijednosti, referenca na memorijske lokacije p i q se prosljeđuje metodi. Te referentne varijable se upućuju pomoću ref. U metodi zamjene, umjesto kopiranja vrijednosti na novu lokaciju, promjene se vrše u stvarnim parametrima. Prilikom ispisa p i q vrijednosti glavnog programa, on će dati zamijenjene vrijednosti. Sada je p vrijednost 3, a q vrijednost je 2.

Koja je sličnost između out i ref u C?

Obje su ključne riječi koje se koriste za upućivanje na parametre metode

Koja je razlika između out i ref u C?

out vs ref in C

Izlaz je ključna riječ u C koja se koristi za upućivanje na izlazni parametar. Koristi se za prosljeđivanje rezultata od pozvane metode do pozivanja metode. Ref je ključna riječ u C koja se koristi za upućivanje na referentni parametar. Koristi se za prosljeđivanje podataka iz pozivajuće metode u pozvanu metodu i za vraćanje podataka iz pozvane metode u pozivnu metodu.
Funkcionalnost
Kada se koristi ključna riječ out, podaci se mogu proslijediti od pozivajuće metode do pozvane metode. Ali ti podaci se odbacuju. Koristi se za prosljeđivanje rezultata metodi koja poziva iz pozvane metode. Kada se koristi ključna riječ ref, podaci se prosljeđuju iz pozivajuće metode u pozvanu metodu, a manipulirani podaci se vraćaju pozivnoj metodi.
Prenošenje podataka
Kada se koristi ključna riječ out, podaci se prosljeđuju na jedan način koji je pozvana metoda pozivnoj metodi. Kada se koristi ključna riječ ref, podaci se prosljeđuju na dva načina, a to su od pozivajuće metode do pozvane metode i od pozvane metode do pozivajuće metode.

Sažetak – out vs ref in C

Prilikom pozivanja metode, možda će biti potrebno proslijediti vrijednosti u metodu i vratiti rezultate iz metode. C ima različite parametre da to postigne. Parametri vrijednosti se koriste za prosljeđivanje parametara u metodu po vrijednosti. Referentni parametri se koriste za prosljeđivanje parametara metodi putem reference. Izlazni parametri se koriste za vraćanje rezultata iz metode. U C se ključna riječ out koristi za izlazne parametre, a ref ključna riječ se koristi za referenciranje parametara. Razlika između out i ref u C je u tome što je out ključna riječ koja se koristi za upućivanje na izlazni parametar koji se koristi za prosljeđivanje rezultata od pozvane metode do pozivajuće metode, dok je ref ključna riječ za upućivanje na referentni parametar koji se koristi za prosljeđivanje podataka iz pozivanje metode pozvanoj metodi i primanje podataka od pozvane metode do poziva metode.

Preuzmite PDF out vs ref u C

Možete preuzeti PDF verziju ovog članka i koristiti je za vanmrežne svrhe prema napomeni o citatu. Molimo preuzmite PDF verziju ovdje: Razlika između Out i Ref u C

Preporučuje se: