Rumah > Artikel > pembangunan bahagian belakang > Lebihan beban fungsi C++ dan sebaris fungsi
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.
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);
Contoh:
int sum(int a, int b) { return a + b; } double sum(double a, double b) { return a + b; }
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, ...);
Untuk fungsi ahli:
inline returnType className::memberFunctionName(parameter1, parameter2, ...);
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; }
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; }
Atas ialah kandungan terperinci Lebihan beban fungsi C++ dan sebaris fungsi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!