Əsas Fərq – C-də çıxış ilə çıxış
C Microsoft tərəfindən hazırlanmış müasir proqramlaşdırma dilidir. Desktop, web və mobil üçün müxtəlif proqramlar hazırlamaq üçün istifadə olunur. Funksiyalar və ya metodlar proqramlaşdırmada bir anlayışdır. Müəyyən bir tapşırığı yerinə yetirmək üçün istifadə olunan ifadələr qrupu funksiya və ya metod kimi tanınır. C proqramlarında icra əsasdan () başlayır. Bir metodun nümunəsidir. Metod çağırarkən məlumat metoda ötürülür və ya metoddan qəbul edilir. Yeni metodu çağıran metod, metodun çağırılması kimi tanınır. Yeni üsul çağırılan metod kimi tanınır. Keçən dəyərləri idarə etmək və nəticəni geri almaq üçün C parametrlərdən istifadə edir. Onlar qiymətli parametrlər, çıxış parametrləri və istinad parametrləridir. Dəyər parametrləri parametrləri dəyər üzrə metoda ötürmək üçün istifadə olunur. İstinad parametrləri parametrləri istinadla metoda ötürmək üçün istifadə olunur. Çıxış parametrləri nəticəni metoddan geri ötürmək üçün istifadə olunur. C dilində çıxış parametrləri üçün out açar sözü, parametrlərə istinad etmək üçün isə ref açar sözü istifadə olunur. C-da out və ref arasında əsas fərq ondan ibarətdir ki, out, nəticələri çağırılan metoddan çağırış metoduna ötürmək üçün istifadə edilən çıxış parametrinə istinad etmək üçün istifadə olunan açar sözdür, ref isə keçid üçün istifadə olunan istinad parametrinə istinad etmək üçün açar sözdür. məlumat çağırış metodundan çağırılan metoda və məlumatı çağırılan metoddan çağırış metoduna qəbul etmək üçün.
C-da nə var?
Funksiya və ya metodun sintaksisi aşağıdakı kimidir. Metodda metod adı, parametr siyahısı, qaytarma növü və giriş spesifikatoru kimi bir sıra elementlər var.
(parametr siyahısı)
{ //icra ediləcək ifadələr
}
Hər bir metodun funksiya çağırışı etmək üçün unikal metodu var. İcra edilə bilən ifadələr əyri mötərizələrin içərisindədir. Qaytarma növü funksiyanın dəyər qaytarıb-qaytarmadığını izah edir. Qaytarma növü olmadıqda ona void deyilir. Tətbiqdə metodun əlçatanlığını təyin etmək üçün giriş spesifikatorundan istifadə olunur. Parametrlər məlumatı qəbul etmək və ya metoda ötürmək üçün istifadə olunur. Parametrləri olmayan üsullar da ola bilər. Parametrlər qiymətləndirilən parametrlər, çıxış parametrləri və ya istinad parametrləri ola bilər.
Çıxış parametrləri nəticələri geri çağırış metoduna ötürmək üçün istifadə olunur. Bunun üçün parametr out açar sözü ilə elan edilməlidir. Çıxış parametri yeni saxlama yeri yaratmır. Ümumiyyətlə, metod bir dəyər qaytarır. Lakin C-da çıxış parametrlərindən istifadə edərək funksiyadan iki dəyəri qaytarmaq mümkündür. Aşağıdakı proqrama baxın.
ad sahəsi tətbiqi1{
ictimai sinif Hesablanması{
ictimai etibarsız ekran(out int a, out int b){
int dəyəri=5;
a=dəyər;
b=dəyər;
a=a a;
b=bb;
}
public statik etibarsız əsas(String args){
int dəyər1=10, dəyər2=20;
Hesablama cal=yeni Hesablama();
cal.display(çıxış dəyər1, çıxış dəyər2);
Console. ReadLine();
}
}
}
Ekran funksiyası əsas metoddan çağırılır. Qiymət1 və iki dəyər 10 və 20-yə malikdir, lakin onlar metoda daxil edilmir. Funksiyada a-nın qiyməti 25, b-nin qiyməti də 25-dir. Beləliklə, həmin dəyərlər geri qaytarılır. Dəyər1 və dəyər2-ni çap edərkən, 10 və 20-ni verməyəcək. Əvəzində 25 və 25-i çap edəcək. Out açar sözündən istifadə edərək, metoddan çoxlu dəyər qaytarıla bilər.
C-da ref nədir?
Parametrləri dəyər üzrə ötürərkən hər bir parametr üçün yeni saxlama yeri yaradılır. Əsas proqramdan göndərilən faktiki parametrlər dəyişmir. Əvəzində həmin dəyərlər ayrı yerə kopyalanır. Həmin yeni dəyişən nüsxələrə formal parametrlər deyilir. Aşağıdakı koda baxın.
ad sahəsi tətbiqi1{
ictimai sinif Hesablanması{
ictimai etibarsız svop(int x, int y){
int temp;
temp=x;
x=y;
y=temp;
}
public statik etibarsız əsas(String args){
Hesablama cal=yeni Hesablama();
int p=2;
int q=3;
kal.mübadilə(p, q);
Console. WriteLine(p);
Console. WriteLine(q);
Console. ReadLine();
}
}
}
Yuxarıda göstərilən proqrama əsasən, Calculation sinfində metod mübadiləsi () var. Əsas proqramda Calculation tipli obyekt yaradılır. p və q kimi iki dəyər var. p dəyişəninin dəyəri 2, q dəyişəninin isə 3 dəyəri var. Bu iki dəyər dəyişdirmə metoduna ötürülür. Mübadilə metodunda 2 dəyəri x dəyişəninə, 3 dəyəri isə y dəyişəninə kopyalanır. Temp dəyişənindən istifadə edərək, dəyərlər dəyişdirilir. Əsas proqramda p və q çap edərkən dəyərlər dəyişdirilmir. p dəyəri hələ də 2 və q dəyəri 3-dür. Hətta dəyişdirmə metodunda dəyərlər dəyişdirilir, lakin əsas proqramda əks olunmur.
Yuxarıdakı kimi dəyərlərin ötürülməsindən fərqli olaraq, parametrləri istinadla ötürmək mümkündür. İstinad dəyişəni yaddaş yerinə istinaddır. Yaradılan yeni yaddaş yeri yoxdur. Metoddakı dəyişikliklər əsas proqramda öz əksini tapmışdır. C dilində istinad parametrləri ref açar sözü ilə istinad edilir. Aşağıdakı proqrama baxın.
ad sahəsi tətbiqi1{
ictimai sinif Hesablanması{
ictimai etibarsız mübadilə(ref int x, ref int y){
int temp;
temper=x;
x=y;
y=temp;
}
public statik etibarsız əsas(String args){
Hesablama cal=yeni Hesablama();
int p=2;
int q=3;
kal.mübadilə(ref p, ref q);
Console. WriteLine(p);
Console. WriteLine(q);
Console. ReadLine();
}
}
}
Yuxarıdakı proqrama uyğun olaraq Calculation sinfi dəyişdirmə metoduna malikdir. Əsas proqramda Calculation tipli obyekt yaradılır. Bunlar p və q kimi iki dəyişəndir. p dəyişəni 2 dəyərinə, q dəyişəni isə 3 dəyərinə malikdir. Qiymətləri ötürməkdənsə, p və q yaddaş yerlərinə istinad metoda ötürülür. Həmin istinad dəyişənləri ref istifadə edərək istinad edilir. Mübadilə metodunda, dəyərləri yeni bir yerə köçürmək əvəzinə, dəyişikliklər faktiki parametrlərə edilir. Əsas proqramın p və q qiymətlərini çap edərkən, dəyişdirilmiş dəyərləri verəcəkdir. İndi p dəyəri 3 və q dəyəri 2-dir.
C-da out və ref arasında oxşarlıq nədir?
Hər ikisi metodun parametrlərinə istinad etmək üçün istifadə olunan açar sözlərdir
C-da out və ref arasında fərq nədir?
out vs ref C |
|
Çıxış C-da çıxış parametrinə istinad etmək üçün istifadə olunan açar sözdür. Nəticələri çağırılan metoddan çağırış metoduna ötürmək üçün istifadə olunur. | Referans C-da istinad parametrinə istinad etmək üçün istifadə olunan açar sözdür. Məlumatı çağırış metodundan çağırılan metoda ötürmək və məlumatı çağırılan metoddan çağırış metoduna qaytarmaq üçün istifadə olunur. |
Funksionallıq | |
Açar sözdən istifadə edərkən, məlumat çağırış metodundan çağırılan metoda ötürülə bilər. Ancaq bu məlumatlar silinir. Nəticəni çağırılan metoddan çağırış metoduna ötürmək üçün istifadə olunur. | Ref açar sözündən istifadə edərkən məlumat çağırış metodundan çağırılan metoda ötürülür və manipulyasiya edilmiş məlumat yenidən çağırış metoduna ötürülür. |
Məlumatların ötürülməsi | |
Açar sözdən istifadə edərkən məlumat çağırılan metoda bir üsulla ötürülür. | Ref açar sözündən istifadə edərkən məlumat iki yolla ötürülür: çağırış metodundan çağırılan metoda və çağırılan metoddan çağırış metoduna. |
Xülasə – C-da referensiyaya qarşı çıxdı
Metodu çağırarkən, dəyərləri metoda ötürmək və metoddan nəticələri geri almaq lazım ola bilər. C-da buna nail olmaq üçün müxtəlif parametrlər var. Dəyər parametrləri parametrləri dəyər üzrə metoda ötürmək üçün istifadə olunur. İstinad parametrləri parametrləri istinadla metoda ötürmək üçün istifadə olunur. Çıxış parametrləri nəticəni metoddan geri ötürmək üçün istifadə olunur. C dilində çıxış parametrləri üçün out açar sözü, parametrlərə istinad etmək üçün isə ref açar sözü istifadə olunur. C-da out və ref arasındakı fərq ondan ibarətdir ki, out, nəticələri çağırılan metoddan çağırış metoduna ötürmək üçün istifadə edilən çıxış parametrinə istinad etmək üçün istifadə edilən açar sözdür, ref isə məlumatları ötürmək üçün istifadə olunan istinad parametrinə istinad etmək üçün açar sözdür. çağırış metodundan çağırılan metoda və məlumatı çağırılan metoddan çağırış metoduna qəbul etmək.
C dilindən PDF-i yükləyin vs ref
Bu məqalənin PDF versiyasını yükləyə və sitat qeydinə əsasən onu oflayn məqsədlər üçün istifadə edə bilərsiniz. Zəhmət olmasa PDF versiyasını buradan endirin: C-də Out və Ref arasındakı fərq