Static binding là gì?

Phrase C++
early binding

Trong C++, static binding là một loại binding:

  • Static binding xảy ra tại thời điểm biên dịch (compile time). Ngoài ra còn gọi là early binding.
  • Trong static binding, định nghĩa hàm và lệnh gọi hàm được liên kết trong thời điểm biên dịch
  • Static binding xảy ra khi tất cả thông tin cần thiết để gọi một hàm đều có sẵn tại thời điểm biên dịch.
  • Có thể đạt được static binding bằng cách sử dụng các lệnh gọi hàm thông thường, nạp chồng hàm (function overloading) và nạp chồng toán tử (operator overloading)

Hãy xem xét ví dụ sau, trong đó hàm sum () được nạp chồng để chấp nhận hai và ba đối số (argument) kiểu integer. Mặc dù có hai hàm có cùng tên bên trong lớp ComputeSum, lệnh gọi hàm sum() liên kết (bind) với hàm tùy thuộc vào các tham số được truyền cho các hàm đó. Binding này được thực hiện tĩnh trong thời điểm biên dịch.


#include <iostream>
using namespace std;
 
class Sum
{
    public:
 
    int sum(int x, int y) {
        return x + y;
    }
 
    int sum(int x, int y, int z) {
        return x + y + z;
    }
};
 
int main()
{
    Sum obj;
    cout 

Output:


Sum is 30
Sum is 60

Xem thêm dynamic binding.

Phrase Programming
early binding

Trong lập trình nói chung, static binding là cơ chế một chương trình máy tính liên kết (bind) tên của một phương thức (method) được gọi với định nghĩa của phương thức đó ở thời điểm biên dịch (compile time).

Learning English Everyday