Makro və Daxili Funksiya Arasındakı Fərq

Mündəricat:

Makro və Daxili Funksiya Arasındakı Fərq
Makro və Daxili Funksiya Arasındakı Fərq

Video: Makro və Daxili Funksiya Arasındakı Fərq

Video: Makro və Daxili Funksiya Arasındakı Fərq
Video: İqtisadiyyat dərsləri 13-Makroiqtisadiyyat və ÜDM (26-cı Proqram) 2024, Iyul
Anonim

Əsas Fərq – Makro ilə Daxili Funksiya

Makro preprosessor direktivi olan kod parçasıdır. Daxili funksiya proqramın icra müddətini minimuma endirmək üçün C++ təkmilləşdirmə xüsusiyyətidir. Buna görə də, Makro və Daxili Funksiya arasındakı əsas fərq ondan ibarətdir ki, makro preprosessor tərəfindən yoxlanılır, daxili funksiya isə kompilyator tərəfindən yoxlanılır.

Makro proqramın əvvəlində hash işarəsindən əvvəl daxil edilir. Proqramda makro adı olduqda, o, makronun məzmunu ilə əvəz olunur.

Makro nədir?

Preprosessor mənbə kodu kompilyatordan keçməzdən əvvəl emal edən proqramdır. O, preprosessor əmr satırından və ya direktivlərdən istifadə etməklə işləyir. Proqramda preprosessor direktivləri əsas proqramdan əvvəl mənbə proqramda yerləşdirilir. Mənbə kodu kompilyatordan keçməzdən əvvəl, preprosessor tərəfindən preprosessor direktivləri üçün yoxlanılır. Preprocessor direktivlərindəsimvolu var. Digər ifadələrdən fərqli olaraq, onlar nöqtəli vergüllə bitmir. Preprosessor direktivlərinin bir növü makrodur. Ümumiyyətlə, makrolar böyük hərflərlə yazılır.

Makro və daxili funksiya arasındakı fərq
Makro və daxili funksiya arasındakı fərq

Şəkil 01: Makroslarla C++ Proqramı

Yuxarıdakı proqrama əsasən 3-cü sətir və 4-cü sətir makroları göstərir. Sahənin hesablanması zamanı PI dəyəri müəyyən edilmiş makrodan istifadə etməklə əvəz olunur. 14-cü sətirdə həcm=CUBE(dəyər), preprosessor ifadəni həcm=(dəyərdəyərdəyər) kimi genişləndirir. Kubun tapılması funksiya kimi yazıla bilər, lakin burada makrodan istifadə etməklə yazılır. Əgər həcm=KUB(x+y) kimi ifadə varsa, o zaman o, həcm=(x+yx+yx+y) qədər genişlənəcək.

Bəzi proqramlaşdırma nişanları asanlıqla səhv yazıla bilər. Onları makroslardan istifadə etməklə əvəz etmək olar. məs. define AND &&, define OR ||. Makro tərifinə define AREA 45.56 kimi ifadələr də daxil ola bilər.

Inline Funksiya nədir?

Funksiya çağırılanda kompilyator onu yerinə yetirmək üçün müəyyən vaxt alır. Əgər funksiya çox mürəkkəb deyilsə, proqramçı funksiyanı daxili funksiyaya çevirə bilər. Aşağıdakı proqrama baxın.

Makro və Daxili Funksiya Arasındakı Fərq_Şəkil 2
Makro və Daxili Funksiya Arasındakı Fərq_Şəkil 2

Şəkil 02: Xəttsiz funksiya

Çap_hello sadə funksiyadır. Funksiya çağırıldıqda "Salam" sətirini çap edir. Bu funksiyanın icra müddəti 0,187 saniyədir. Daxil olan açar sözü aşağıdakı kimi istifadə edərkən, icra müddəti 0,064 saniyəyə qədər azalır.

Makro və daxili funksiya arasındakı əsas fərq
Makro və daxili funksiya arasındakı əsas fərq

Şəkil 03: Daxili Funksiya

Buna görə də, daxili açar sözündən istifadə etməklə icra müddəti azalır. Döngələr, keçid ifadələri varsa və funksiyada statik dəyişənlər və ya rekursiv funksiyalar varsa, daxili funksiyalar işləməyə bilər.

Makro və Inline Funksiya Arasındakı Fərq Nədir?

Makro və Daxili Funksiya

Makro, proqramın əvvəlində hash işarəsi ilə daxil edilmiş preprosessor direktivi olan kod parçasıdır. Daxili funksiya proqramın icra müddətini minimuma endirmək üçün C++ təkmilləşdirmə xüsusiyyətidir.
Qiymətləndirmə Vaxtı
Makroda arqument hər dəfə proqramda istifadə edildikdə qiymətləndirilir. Daxili olaraq arqument bir dəfə qiymətləndirilir.
Yoxlanılıb
Makro preprosessor tərəfindən yoxlanılır. Daxili funksiya kompilyator tərəfindən yoxlanılır.
Açar söz
Marko define istifadə edir. Daxili funksiya "daxili" açar sözündən istifadə edir.
İstifadə
Makro sabitləri, ifadələri təyin etmək, hərfi mətni əvəz etmək və funksiyaları müəyyən etmək üçün istifadə edilə bilər. Proqramın icra müddətini minimuma endirmək üçün daxili funksiyadan istifadə edilə bilər.
Xitam
Makro yeni sətirlə bitir. Daxili funksiya daxili funksiyanın sonundakı əyri mötərizə ilə başa çatır.
Müəyyənedici Nöqtə
Proqramın əvvəlində Marko müəyyən edilmişdir. Daxili funksiya sinif daxilində və ya xaricində ola bilər.

Xülasə – Makro və Daxili Funksiya

Bu məqalə Makro və Daxili Funksiya arasındakı fərqi müzakirə etdi. Bu anlayışlar C++ proqramlaşdırmasında istifadə olunur. Makro və Daxil Funksiya arasındakı fərq ondan ibarətdir ki, makro preprosessor tərəfindən yoxlanılır, daxili funksiya isə kompilyator tərəfindən yoxlanılır.

Tövsiyə: