Perbezaan Antara Fungsi Makro dan Sebaris

Isi kandungan:

Perbezaan Antara Fungsi Makro dan Sebaris
Perbezaan Antara Fungsi Makro dan Sebaris

Video: Perbezaan Antara Fungsi Makro dan Sebaris

Video: Perbezaan Antara Fungsi Makro dan Sebaris
Video: MIKRO MAKRO | BREAKDOWN Mobile Legends Indonesia | MLBB 2024, November
Anonim

Perbezaan Utama – Fungsi Makro lwn Sebaris

Makro ialah serpihan kod, yang merupakan arahan prapemproses. Fungsi sebaris ialah ciri peningkatan C++ untuk meminimumkan masa pelaksanaan program. Oleh itu, perbezaan utama antara Fungsi Makro dan Sebaris ialah makro disemak oleh prapemproses manakala fungsi sebaris disemak oleh pengkompil.

Makro disertakan pada permulaan program didahului dengan tanda cincang. Apabila terdapat nama makro dalam program, ia digantikan dengan kandungan makro.

Apakah Makro?

Prapemproses ialah atur cara yang memproses kod sumber sebelum ia melalui pengkompil. Ia beroperasi menggunakan baris arahan prapemproses atau arahan. Dalam program, arahan prapemproses diletakkan dalam program sumber sebelum program utama. Sebelum kod sumber melalui pengkompil, ia diperiksa oleh prapemproses untuk arahan prapemproses. Arahan prapemproses mempunyai simbol. Tidak seperti pernyataan lain, ia tidak berakhir dengan koma bernoktah. Satu jenis arahan prapemproses ialah makro. Secara umumnya, makro ditulis dengan huruf besar.

Perbezaan Antara Fungsi Makro dan Sebaris
Perbezaan Antara Fungsi Makro dan Sebaris

Rajah 01: Program C++ dengan Makro

Menurut program di atas, baris 3 dan baris 4 menunjukkan makro. Apabila mengira kawasan, nilai PI digantikan menggunakan makro yang ditentukan. Dalam baris 14, volum=CUBE(nilai), prapemproses mengembangkan pernyataan sebagai volum=(nilainilainilai). Mencari kubus boleh ditulis sebagai fungsi, tetapi di sini ia ditulis menggunakan makro. Jika terdapat pernyataan sebagai isipadu=CUBE(x+y), maka ia akan mengembang kepada isipadu=(x+yx+yx+y).

Sesetengah token pengaturcaraan mungkin mudah tersilap taip. Mereka boleh diganti menggunakan makro. cth. define AND &&, define ATAU ||. Definisi makro juga boleh termasuk ungkapan seperti define AREA 45.56.

Apakah itu Fungsi Sebaris?

Apabila fungsi dipanggil, pengkompil mengambil sedikit masa untuk melaksanakannya. Jika fungsi tidak begitu kompleks, pengaturcara boleh menukar fungsi kepada fungsi sebaris. Rujuk program di bawah.

Perbezaan Antara Fungsi Makro dan Sebaris_Rajah 2
Perbezaan Antara Fungsi Makro dan Sebaris_Rajah 2

Rajah 02: Fungsi tanpa Sebaris

print_hello ialah fungsi yang mudah. Ia mencetak rentetan "Hello" apabila fungsi dipanggil. Masa pelaksanaan untuk fungsi itu ialah 0.187s. Apabila menggunakan kata kunci sebaris seperti berikut, masa pelaksanaan berkurangan kepada 0.064s.

Perbezaan Utama Antara Fungsi Makro dan Sebaris
Perbezaan Utama Antara Fungsi Makro dan Sebaris

Rajah 03: Fungsi Sebaris

Oleh itu, dengan menggunakan kata kunci sebaris, masa pelaksanaan berkurangan. Fungsi sebaris mungkin tidak berfungsi jika terdapat gelung, pernyataan suis dan jika fungsi tersebut mengandungi pembolehubah statik atau fungsi rekursif.

Apakah Perbezaan Antara Fungsi Makro dan Sebaris?

Fungsi Makro lwn Sebaris

Makro ialah serpihan kod, yang merupakan arahan prapemproses yang disertakan pada permulaan program didahului dengan tanda cincang. Fungsi sebaris ialah ciri peningkatan C++ untuk meminimumkan masa pelaksanaan program.
Masa Penilaian
Dalam makro, hujah dinilai setiap kali ia digunakan dalam program. Dalam sebaris, hujah dinilai sekali.
Disemak Oleh
Makro disemak oleh prapemproses. Fungsi sebaris disemak oleh pengkompil.
Kata kunci
Marco menggunakan define. Fungsi sebaris menggunakan kata kunci ‘sebaris’.
Penggunaan
Makro boleh digunakan untuk menentukan pemalar, ungkapan, untuk penggantian teks literal dan untuk mentakrifkan fungsi dsb. Fungsi sebaris boleh digunakan untuk meminimumkan masa pelaksanaan program.
Penamatan
Makro ditamatkan dengan baris baharu. Fungsi sebaris ditamatkan dengan pendakap kerinting di hujung fungsi sebaris.
Titik Penentu
A Marco ditakrifkan pada permulaan program. Fungsi sebaris boleh berada di dalam atau di luar kelas.

Ringkasan – Fungsi Makro lwn Sebaris

Artikel ini membincangkan perbezaan antara Fungsi Makro dan Sebaris. Konsep ini digunakan dalam pengaturcaraan C++. Perbezaan antara Fungsi Makro dan Sebaris ialah makro disemak oleh prapemproses manakala fungsi sebaris disemak oleh pengkompil.

Disyorkan: