Mahalagang Pagkakaiba – out vs ref sa C
Ang C ay isang modernong programming language na binuo ng Microsoft. Ito ay ginagamit para sa pagbuo ng iba't ibang mga application para sa desktop, web at mobile. Ang mga function o pamamaraan ay isang konsepto sa programming. Ang pangkat ng mga pahayag na iyon na ginagamit upang magsagawa ng isang partikular na gawain ay kilala bilang isang function o isang paraan. Sa mga programang C, ang pagpapatupad ay nagsisimula mula sa pangunahing (). Ito ay isang halimbawa ng isang pamamaraan. Kapag tumatawag sa isang pamamaraan, ang data ay ipinapasa sa pamamaraan o natanggap mula sa pamamaraan. Ang pamamaraan na tumatawag sa bagong pamamaraan ay kilala bilang pagtawag sa pamamaraan. Ang bagong pamamaraan ay kilala bilang tinatawag na pamamaraan. Para sa pamamahala ng mga pumasa na halaga at pagbabalik ng resulta, ang C ay gumagamit ng mga parameter. Ang mga ito ay pinahahalagahan na mga parameter, mga parameter ng output at mga parameter ng sanggunian. Ang mga parameter ng halaga ay ginagamit para sa pagpasa ng mga parameter sa pamamaraan ayon sa halaga. Ang mga parameter ng sanggunian ay ginagamit upang ipasa ang mga parameter sa pamamaraan sa pamamagitan ng sanggunian. Ang mga parameter ng output ay ginagamit upang ipasa ang resulta pabalik mula sa pamamaraan. Sa C, ang out na keyword ay ginagamit para sa mga parameter ng output at ang ref na keyword ay ginagamit upang i-reference ang mga parameter. Ang pangunahing pagkakaiba sa pagitan ng out at ref sa C ay iyon, ang out ay isang keyword na ginagamit upang sumangguni sa isang parameter ng output na ginagamit upang ipasa ang mga resulta mula sa tinatawag na paraan patungo sa paraan ng pagtawag habang ang ref ay isang keyword upang sumangguni sa isang reference na parameter na ginagamit upang ipasa data mula sa paraan ng pagtawag hanggang sa tinatawag na paraan at upang matanggap ang data mula sa tinatawag na paraan hanggang sa paraan ng pagtawag.
Ano ang nasa C?
Ang syntax para sa function o isang paraan ay ang mga sumusunod. Ang isang paraan ay may bilang ng mga elemento gaya ng pangalan ng pamamaraan, listahan ng parameter, uri ng pagbabalik at tagatukoy ng access.
(listahan ng parameter)
{ //mga pahayag na isasagawa
}
Ang bawat paraan ay may natatanging paraan upang gawin ang function na tawag. Ang mga executable na pahayag ay nasa loob ng mga kulot na braces. Ang uri ng pagbabalik ay nagpapaliwanag kung ang function ay nagbabalik ng isang halaga o hindi. Kapag walang return type, ito ay tinatawag na void. Ginagamit ang access specifier upang tukuyin ang accessibility ng paraan sa application. Ang mga parameter ay ginagamit upang tumanggap o magpasa ng data sa pamamaraan. Maaari ding mayroong mga pamamaraan na walang mga parameter. Ang mga parameter ay maaaring mga parameter ng halaga, mga parameter ng output o mga parameter ng sanggunian.
Ang mga parameter ng output ay ginagamit upang ipasa ang mga resulta pabalik sa paraan ng pagtawag. Para diyan, ang parameter ay dapat na ideklara nang walang keyword. Ang parameter ng output ay hindi gumagawa ng bagong lokasyon ng imbakan. Sa pangkalahatan, ang isang pamamaraan ay nagbabalik ng isang halaga. Ngunit sa C, posibleng ibalik ang dalawang halaga mula sa isang function gamit ang mga parameter ng output. Sumangguni sa programa sa ibaba.
namespace application1{
Pagkalkula ng pampublikong klase{
public void display(out int a, out int b){
int value=5;
a=value;
b=value;
a=a a;
b=bb;
}
public static void main(String args){
int value1=10, value2=20;
Ccalculation cal=bagong Calculation();
cal.display(out value1, out value2);
Console. ReadLine();
}
}
}
Ang display function ay tinatawag mula sa pangunahing paraan. Ang value1 at value ng dalawa ay mayroong 10 at 20, ngunit hindi sila isinasaalang-alang sa pamamaraan. Ang halaga ng a ay 25 at ang halaga ng b ay 25 din sa function. Samakatuwid, ibinalik ang mga halagang iyon. Kapag nagpi-print ng value1 at value2, hindi ito magbibigay ng 10 at 20. Sa halip, magpi-print ito ng 25 at 25. Gamit ang out keyword maraming value ang maaaring ibalik mula sa pamamaraan.
Ano ang ref sa C?
Kapag nagpapasa ng mga parameter ayon sa halaga, isang bagong lokasyon ng storage ang gagawin para sa bawat parameter. Ang aktwal na mga parameter na ipinadala mula sa pangunahing programa ay hindi nagbabago. Sa halip, ang mga halagang iyon ay kinokopya sa isang hiwalay na lokasyon. Ang mga bagong variable na kopya ay tinatawag na mga pormal na parameter. Sumangguni sa code sa ibaba.
namespace application1{
Pagkalkula ng pampublikong klase{
public void swap(int x, int y){
int temp;
temp=x;
x=y;
y=temp;
}
public static void main(String args){
Ccalculation cal=bagong Calculation();
int p=2;
int q=3;
cal.swap(p, q);
Console. WriteLine(p);
Console. WriteLine(q);
Console. ReadLine();
}
}
}
Ayon sa programa sa itaas, ang klase ng Pagkalkula ay may method swap (). Sa pangunahing programa, nilikha ang isang object ng uri ng Pagkalkula. Mayroong dalawang mga halaga tulad ng p at q. Ang variable na p ay may value 2 at q variable ay may value 3. Ang dalawang value na iyon ay ipinapasa sa swap method. Sa swap method, ang value 2 ay kinopya sa variable x at value 3 ay kinopya sa variable y. Gamit ang temp variable, pinapalitan ang mga value. Bumalik sa pangunahing programa, kapag nagpi-print ng p at q, ang mga halaga ay hindi pinapalitan. Ang p value ay 2 pa rin at ang q value ay 3. Kahit na sa swap method, ang mga value ay pinapalitan ngunit hindi sumasalamin sa pangunahing program.
Hindi tulad ng pagpasa ng mga value tulad ng nasa itaas, posibleng magpasa ng mga parameter sa pamamagitan ng reference. Ang isang reference variable ay isang reference sa lokasyon ng memorya. Walang nalikhang bagong lokasyon ng memorya. Ang mga pagbabago sa pamamaraan na makikita sa sa pangunahing programa. Sa C, ang mga reference na parameter ay tinutukoy gamit ang ref keyword. Sumangguni sa programa sa ibaba.
namespace application1{
Pagkalkula ng pampublikong klase{
public void swap(ref int x, ref int y){
int temp;
temp=x;
x=y;
y=temp;
}
public static void main(String args){
Ccalculation cal=bagong Calculation();
int p=2;
int q=3;
cal.swap(ref p, ref q);
Console. WriteLine(p);
Console. WriteLine(q);
Console. ReadLine();
}
}
}
Ayon sa programa sa itaas, ang Pagkalkula ng klase ay may paraan ng swap. Sa pangunahing programa, nilikha ang isang object ng uri ng Pagkalkula. Ang dalawang variable tulad ng p at q. Ang p variable ay may value 2 at q variable ay may value na 3. Sa halip na ipasa ang mga value, ang reference sa mga lokasyon ng memorya ng p at q ay ipinapasa sa pamamaraan. Ang mga reference na variable ay tinutukoy gamit ang ref. Sa paraan ng swap, sa halip na i-cope ang mga value sa isang bagong lokasyon, ginagawa ang mga pagbabago sa aktwal na mga parameter. Kapag nagpi-print ng mga p at q na halaga ng pangunahing programa, ibibigay nito ang mga swapped na halaga. Ngayon ang p value ay 3 at q value ay 2.
Ano ang Pagkakatulad sa pagitan ng out at ref sa C?
Parehong mga keyword na ginagamit upang i-refer ang mga parameter ng isang paraan
Ano ang Pagkakaiba sa pagitan ng out at ref sa C?
out vs ref sa C |
|
Ang out ay isang keyword sa C na ginagamit upang sumangguni sa isang parameter ng output. Ito ay ginagamit upang ipasa ang mga resulta mula sa isang tinatawag na pamamaraan hanggang sa pagtawag sa pamamaraan. | Ang ref ay isang keyword sa C na ginagamit upang mag-refer ng reference na parameter. Ito ay ginagamit upang ipasa ang data mula sa paraan ng pagtawag patungo sa tinatawag na paraan at upang ibalik ang data mula sa tinatawag na paraan patungo sa paraan ng pagtawag. |
Pag-andar | |
Kapag ginagamit ang keyword out, maipapasa ang data mula sa paraan ng pagtawag patungo sa tinatawag na paraan. Ngunit ang data na iyon ay itinapon. Ito ay ginagamit upang ipasa ang resulta sa paraan ng pagtawag mula sa tinatawag na paraan. | Kapag ginagamit ang keyword ref, ang data ay ipinapasa mula sa paraan ng pagtawag patungo sa tinatawag na paraan at ang manipuladong data ay ipapasa pabalik sa paraan ng pagtawag. |
Pagpapasa ng Data | |
Kapag ginagamit ang keyword out, ipinapasa ang data sa isang paraan na tinatawag na paraan sa paraan ng pagtawag. | Kapag ginagamit ang keyword ref, ang data ay ipinapasa sa dalawang paraan na, mula sa paraan ng pagtawag hanggang sa tinatawag na paraan at mula sa tinatawag na paraan hanggang sa paraan ng pagtawag. |
Buod – out vs ref sa C
Kapag nag-invoke ng isang paraan, maaaring kailanganin na ipasa ang mga value sa pamamaraan at ibalik ang mga resulta mula sa pamamaraan. Ang C ay may iba't ibang mga parameter upang makamit iyon. Ang mga parameter ng halaga ay ginagamit para sa pagpasa ng mga parameter sa pamamaraan ayon sa halaga. Ang mga parameter ng sanggunian ay ginagamit upang ipasa ang mga parameter sa pamamaraan sa pamamagitan ng sanggunian. Ang mga parameter ng output ay ginagamit upang ipasa ang resulta pabalik mula sa pamamaraan. Sa C, ang out na keyword ay ginagamit para sa mga parameter ng output at ang ref na keyword ay ginagamit upang i-reference ang mga parameter. Ang pagkakaiba sa pagitan ng out at ref sa C ay iyon, ang out ay isang keyword na ginagamit upang sumangguni sa isang parameter ng output na ginagamit upang ipasa ang mga resulta mula sa tinatawag na paraan patungo sa paraan ng pagtawag habang ang ref ay isang keyword upang sumangguni sa isang reference na parameter na ginagamit upang magpasa ng data mula sa paraan ng pagtawag sa tinatawag na paraan at upang matanggap ang data mula sa tinatawag na paraan hanggang sa paraan ng pagtawag.
I-download ang PDF ng out vs ref sa C
Maaari mong i-download ang PDF na bersyon ng artikulong ito at gamitin ito para sa offline na layunin ayon sa tala ng pagsipi. Paki-download ang bersyon ng PDF dito: Pagkakaiba sa pagitan ng Out at Ref sa C