Rumah > pembangunan bahagian belakang > C++ > Lebihan beban fungsi C++ dan sebaris fungsi

Lebihan beban fungsi C++ dan sebaris fungsi

WBOY
Lepaskan: 2024-04-16 09:09:01
asal
812 orang telah melayarinya

Lebih muatan fungsi dan sebaris fungsi Lebih muatan fungsi membolehkan mencipta berbilang fungsi dengan nama yang sama tetapi senarai parameter berbeza, menulis kod khusus untuk jenis input yang berbeza. Inlining fungsi ialah pengoptimuman pengkompil yang memasukkan kod fungsi terus ke dalam titik panggilan untuk meningkatkan kelajuan program.

C++ 函数重载和函数内联

C++ Overloading Fungsi dan Function Inlining

Function Overloading

Function Overloading membolehkan anda mencipta berbilang fungsi dengan nama yang sama tetapi berbeza senarai parameter. Ini membolehkan anda menulis kod khusus sasaran berdasarkan jenis atau jumlah input yang berbeza.

Sintaks:

returnType functionName(parameter1, parameter2, ...);
returnType functionName(parameter1, parameter2, ..., parameterN);
Salin selepas log masuk

Contoh:

int sum(int a, int b) { return a + b; }
double sum(double a, double b) { return a + b; }
Salin selepas log masuk

Fungsi sebaris

Fungsi sebaris ialah sejenis kompilasi panggilan ke tapak (selain menyisipkan fungsi secara langsung ke dalam fungsi panggilan ke) Teknologi pengoptimuman pelayan. Ini boleh meningkatkan kelajuan program anda, terutamanya jika fungsi dipanggil dengan kerap.

Sintaks:

Untuk fungsi:

inline returnType functionName(parameter1, parameter2, ...);
Salin selepas log masuk

Untuk fungsi ahli:

inline returnType className::memberFunctionName(parameter1, parameter2, ...);
Salin selepas log masuk

Contoh praktikal:

Katakan anda ingin mengira kawasan pelbagai bentuk Anda boleh menggunakan lebihan fungsi untuk mencipta fungsi pengiraan kawasan khusus untuk setiap bentuk.

Contoh:

#include <iostream>

using namespace std;

double area(int radius) {
  return 3.14 * radius * radius;
}

double area(int length, int width) {
  return length * width;
}

double area(int base, int height) {
  return 0.5 * base * height;
}

int main() {
  cout << "圆的面积: " << area(5) << endl;
  cout << "矩形的面积: " << area(4, 7) << endl;
  cout << "三角形的面积: " << area(3, 6) << endl;
}
Salin selepas log masuk

Dengan menggunakan inlining fungsi, kecekapan program boleh dipertingkatkan lagi:

#include <iostream>

using namespace std;

inline double area(int radius) {
  return 3.14 * radius * radius;
}

inline double area(int length, int width) {
  return length * width;
}

inline double area(int base, int height) {
  return 0.5 * base * height;
}

int main() {
  cout << "圆的面积: " << area(5) << endl;
  cout << "矩形的面积: " << area(4, 7) << endl;
  cout << "三角形的面积: " << area(3, 6) << endl;
}
Salin selepas log masuk

Atas ialah kandungan terperinci Lebihan beban fungsi C++ dan sebaris fungsi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan