Հիմնական տարբերություն – դուրս ընդդեմ ռեֆերի C-ում
C-ը ժամանակակից ծրագրավորման լեզու է, որը մշակվել է Microsoft-ի կողմից: Այն օգտագործվում է աշխատասեղանի, վեբի և բջջայինի համար տարբեր հավելվածներ մշակելու համար: Գործառույթները կամ մեթոդները հասկացություն է ծրագրավորման մեջ: Հայտարարությունների այդ խումբը, որն օգտագործվում է կոնկրետ առաջադրանք կատարելու համար, հայտնի է որպես ֆունկցիա կամ մեթոդ: C ծրագրերում կատարումը սկսվում է main-ից (): Դա մեթոդի օրինակ է։ Մեթոդ կանչելիս տվյալները փոխանցվում են մեթոդին կամ ստացվում են մեթոդից: Նոր մեթոդը կանչող մեթոդը հայտնի է որպես մեթոդի կանչ: Նոր մեթոդը հայտնի է որպես կոչված մեթոդ։ Անցնող արժեքները կառավարելու և արդյունքը վերադարձնելու համար C-ն օգտագործում է պարամետրեր։Դրանք գնահատված պարամետրեր են, ելքային պարամետրեր և հղումային պարամետրեր: Արժեքի պարամետրերը օգտագործվում են պարամետրերը մեթոդին ըստ արժեքի փոխանցելու համար: Հղման պարամետրերը օգտագործվում են մեթոդին պարամետրերը հղումով փոխանցելու համար: Արդյունքների պարամետրերը օգտագործվում են արդյունքը մեթոդից հետ փոխանցելու համար: C-ում out հիմնաբառը օգտագործվում է ելքային պարամետրերի համար, իսկ ref հիմնաբառը օգտագործվում է հղում պարամետրերի համար: C-ում out-ի և ref-ի հիմնական տարբերությունն այն է, որ out-ը հիմնաբառ է, որն օգտագործվում է ելքային պարամետրը փոխանցելու համար, որն օգտագործվում է կանչված մեթոդից արդյունքները կանչելու մեթոդին փոխանցելու համար, մինչդեռ ref-ը հիմնաբառ է՝ հղում անելու համար, որն օգտագործվում է փոխանցելու համար: տվյալներ կանչելու մեթոդից մինչև կանչված մեթոդ և տվյալներ կանչված մեթոդից կանչելու մեթոդ ստանալու համար:
Ինչ կա C-ում?
Ֆունկցիայի կամ մեթոդի շարահյուսությունը հետևյալն է. Մեթոդն ունի մի շարք տարրեր, ինչպիսիք են մեթոդի անվանումը, պարամետրերի ցանկը, վերադարձի տեսակը և մուտքի ցուցիչը:
(պարամետրերի ցանկ)
{ //կատարման դրույթներ
}
Յուրաքանչյուր մեթոդ ունի ֆունկցիան կանչելու յուրահատուկ մեթոդ: Գործարկվող հայտարարությունները գտնվում են գանգուր փակագծերի ներսում: Վերադարձի տեսակը բացատրում է՝ ֆունկցիան արժեք է վերադարձնում, թե ոչ։ Երբ վերադարձի տեսակ չկա, այն կոչվում է void: Մուտքի ցուցիչն օգտագործվում է հավելվածում մեթոդի մատչելիությունը նշելու համար: Պարամետրերը օգտագործվում են տվյալներ ստանալու կամ մեթոդին փոխանցելու համար: Կարող են լինել նաև առանց պարամետրերի մեթոդներ: Պարամետրերը կարող են լինել արժեքավոր պարամետրեր, ելքային պարամետրեր կամ հղումային պարամետրեր:
Ելքի պարամետրերն օգտագործվում են արդյունքները կանչելու մեթոդին վերադարձնելու համար: Դրա համար պարամետրը պետք է հայտարարվի բանալի բառով out: Ելքային պարամետրը չի ստեղծում պահեստավորման նոր տեղ: Սովորաբար մեթոդը վերադարձնում է մեկ արժեք:Բայց C-ում հնարավոր է ֆունկցիայից երկու արժեք վերադարձնել՝ օգտագործելով ելքային պարամետրերը։ Տե՛ս ստորև ներկայացված ծրագիրը։
namespace հավելված1{
հանրային դասի հաշվարկ{
public void display (int a, out int b){
int արժեք=5;
a=արժեք;
b=արժեք;
a=a a;
b=bb;
}
public static void main (String args){
int value1=10, value2=20;
Calculation cal=new Calculation();
cal.display (դուրս արժեքը 1, դուրս արժեքը 2);
Console. ReadLine();
}
}
}
Ցուցադրման ֆունկցիան կանչվում է հիմնական մեթոդից: Արժեքը 1 և արժեքը երկու ունեն 10 և 20, բայց դրանք չեն ընդունվում մեթոդի մեջ: a-ի արժեքը 25 է, իսկ b-ի արժեքը նույնպես 25 է ֆունկցիայում։Հետևաբար, այդ արժեքները վերադարձվում են: Արժեքը 1 և արժեքը 2 տպելիս այն չի տա 10 և 20: Փոխարենը, այն կտպագրի 25 և 25: Օգտագործելով դուրս հիմնաբառը, մեթոդից կարող են վերադարձվել բազմաթիվ արժեքներ:
Ի՞նչ է ref C-ում?
Պարամետրերը ըստ արժեքի փոխանցելիս յուրաքանչյուր պարամետրի համար ստեղծվում է պահեստավորման նոր տեղ: Հիմնական ծրագրից ուղարկված իրական պարամետրերը չեն փոխվում: Փոխարենը, այդ արժեքները պատճենվում են առանձին վայրում: Այդ նոր փոփոխական պատճենները կոչվում են ֆորմալ պարամետրեր: Տե՛ս ստորև բերված կոդը։
namespace հավելված1{
հանրային դասի հաշվարկ{
public void swap(int x, int y){
int ջերմաստիճան;
temp=x;
x=y;
y=ջերմաստիճան;
}
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();
}
}
}
Ըստ վերը նշված ծրագրի՝ Calculation դասը ունի մեթոդի փոխանակում (): Հիմնական ծրագրում ստեղծվում է Calculation տեսակի օբյեկտ։ Կան երկու արժեքներ, ինչպիսիք են p և q: p փոփոխականն ունի 2 արժեք, իսկ q փոփոխականը՝ 3։ Այդ երկու արժեքները փոխանցվում են swap մեթոդին։ Փոխանակման մեթոդում 2 արժեքը պատճենվում է x փոփոխականի մեջ, իսկ 3 արժեքը պատճենվում է y փոփոխականին: Օգտագործելով temp փոփոխականը, արժեքները փոխվում են: Դեռ հիմնական ծրագրում, p և q տպելիս արժեքները չեն փոխվում: p արժեքը դեռևս 2 է, իսկ q արժեքը 3 է: Նույնիսկ փոխանակման մեթոդում արժեքները փոխվում են, բայց չեն արտացոլվում հիմնական ծրագրում:
Ի տարբերություն վերը նշված արժեքների փոխանցման, հնարավոր է պարամետրեր փոխանցել հղումով: Հղման փոփոխականը հղում է հիշողության գտնվելու վայրին:Հիշողության նոր տեղակայում չկա: Հիմնական ծրագրում արտացոլված մեթոդի փոփոխությունները: C-ում հղման պարամետրերը փոխանցվում են ref հիմնաբառի միջոցով: Տե՛ս ստորև ներկայացված ծրագիրը։
namespace հավելված1{
հանրային դասի հաշվարկ{
public void swap(ref int x, ref int y){
int ջերմաստիճան;
ջերմաստիճան=x;
x=y;
y=ջերմաստիճան;
}
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();
}
}
}
Ըստ վերոնշյալ ծրագրի, դասի հաշվարկն ունի swap մեթոդը։Հիմնական ծրագրում ստեղծվում է Calculation տեսակի օբյեկտ։ Երկու փոփոխականներ, ինչպիսիք են p և q: p փոփոխականն ունի 2 արժեքը, իսկ q փոփոխականը՝ 3: Արժեքները փոխանցելու փոխարեն p և q հիշողության վայրերին հղումը փոխանցվում է մեթոդին: Այդ հղման փոփոխականները նշված են՝ օգտագործելով ref. Փոխանակման մեթոդով, արժեքները նոր վայրում փոխելու փոխարեն, փոփոխությունները կատարվում են իրական պարամետրերում: Հիմնական ծրագրի p և q արժեքները տպելիս այն կտա փոխանակված արժեքները։ Այժմ p արժեքը 3 է, իսկ q արժեքը՝ 2։
Ո՞րն է նմանությունը C-ում out-ի և ref-ի միջև:
Երկուսն էլ հիմնաբառեր են, որոնք օգտագործվում են մեթոդի պարամետրերը վերաբերելու համար:
Ո՞րն է տարբերությունը C-ում out-ի և ref-ի միջև:
դուրս ընդդեմ ռեֆերի C-ում |
|
The out-ը C-ի հիմնաբառ է, որն օգտագործվում է ելքային պարամետրը նշելու համար: Այն օգտագործվում է կանչված մեթոդից արդյունքները մեթոդ կանչելու համար: | Ref-ը C-ի հիմնաբառ է, որն օգտագործվում է հղումային պարամետրը նշելու համար: Այն օգտագործվում է կանչելու մեթոդից տվյալներ կանչվող մեթոդին փոխանցելու և կանչված մեթոդից կանչելու մեթոդ վերադարձնելու համար: |
Ֆունկցիոնալություն | |
Բառը դուրս օգտագործելիս տվյալները կարող են փոխանցվել կանչի մեթոդից կանչվող մեթոդին: Բայց այդ տվյալները անտեսվում են: Այն օգտագործվում է կոչվող մեթոդից արդյունքը կանչելու մեթոդին փոխանցելու համար: | Բանալբառը ref օգտագործելիս տվյալները կանչման մեթոդից փոխանցվում են կանչվող մեթոդին, իսկ մանիպուլյացիայի ենթարկված տվյալները վերադարձվում են կանչելու մեթոդին: |
Տվյալների փոխանցում | |
Բառը դուրս օգտագործելիս տվյալները փոխանցվում են մեկ եղանակով, որը կանչված մեթոդ է կանչելու մեթոդին: | Բանալի բառը օգտագործելիս տվյալները փոխանցվում են երկու եղանակով՝ կանչի մեթոդից կանչվող մեթոդին և կանչվող մեթոդից կանչելու մեթոդին: |
Ամփոփում – դուրս ընդդեմ ռեֆերի C-ում
Մեթոդ կանչելիս կարող է անհրաժեշտ լինել արժեքները փոխանցել մեթոդին և հետ ստանալ մեթոդի արդյունքները: C-ն ունի տարբեր պարամետրեր դրան հասնելու համար: Արժեքի պարամետրերը օգտագործվում են պարամետրերը մեթոդին ըստ արժեքի փոխանցելու համար: Հղման պարամետրերը օգտագործվում են մեթոդին պարամետրերը հղումով փոխանցելու համար: Արդյունքների պարամետրերը օգտագործվում են արդյունքը մեթոդից հետ փոխանցելու համար: C-ում out հիմնաբառը օգտագործվում է ելքային պարամետրերի համար, իսկ ref հիմնաբառը օգտագործվում է հղում պարամետրերի համար: C-ում out-ի և ref-ի միջև տարբերությունն այն է, որ out-ը հիմնաբառ է, որն օգտագործվում է ելքային պարամետրը փոխանցելու համար, որն օգտագործվում է արդյունքները կոչված մեթոդից կանչելու մեթոդ փոխանցելու համար, մինչդեռ ref-ը հիմնաբառ է հղում հղում կատարելու համար, որն օգտագործվում է տվյալներ փոխանցելու համար: կանչելու մեթոդ կանչված մեթոդին և տվյալներ ստանալու կանչված մեթոդից դեպի կանչի մեթոդ:
Ներբեռնեք out vs ref-ի PDF-ը C-ով
Դուք կարող եք ներբեռնել այս հոդվածի PDF տարբերակը և օգտագործել այն անցանց նպատակներով՝ ըստ մեջբերումների: Խնդրում ենք ներբեռնել PDF տարբերակը այստեղ՝ Out-ի և Ref-ի միջև տարբերությունը C-ում