<< Chapter < Page | Chapter >> Page > |
Khái niệm:
Kiểm tra kiểu tĩnh là sự kiểm tra kiểu được thực hiện trong quá trình dịch chương trình.
Phương pháp thực hiện:
Theo nguyên tắc kiểm tra kiểu tĩnh, thông tin về kiểu của ÐTDL phải được cung cấp cho bộ dịch. Thông tin này một phần được cung cấp bởi phép khai báo của người lập trình và một phần bởi ngôn ngữ .
Các thông tin bao gồm:
Kiểm tra kiểu tĩnh được thực hiện như sau: Thông qua đoạn đầu của chương trình, bộ biên dịch tập hợp thông tin từ sự khai báo trong chương trình vào trong bảng danh biểu (symbol table) nơi chứa thông tin về kiểu của các biến và chương trình con. Bộ biên dịch cũng sẽ có thông tin về các phép toán nguyên thuỷ được định nghĩa bởi ngôn ngữ, các hằng...Khi gặp một phép toán thì phải tra trong bảng danh biểu để xác định kiểu của mỗi một đối số có hợp lệ hay không. Chú ý rằng nếu phép toán là phép toán chung như đã nói ở trên thì có thể có nhiều kiểu hợp lệ cho một đối số. Nếu kiểu của đối số là hợp lệ thì kiểu kết quả được xác định và bộ biên dịch ghi lại thông tin này để kiểm tra các phép toán sau.
Ngôn ngữ sử dụng:
Kiểm tra kiểu tĩnh thường được sử dụng trong các ngôn ngữ khai báo tức là khi viết chương trình, các biến phải được khai báo kiểu trước khi sử dụng như Pascal, C…
Ưu điểm:
Nhược điểm:
Yếu điểm chủ yếu của kiểm tra kiểu tĩnh là chương trình không mềm dẻo, người lập trình luôn phải lo lắng về việc sử dụng biến không đúng kiểu.
Trong quá trình kiểm tra kiểu, nếu có sự không tương thích giữa kiểu thực của đối số và kiểu đang được monng đợi của phép toán ấy thì có hai lựa chọn có thể:
Chuyển đổi kiểu là một phép toán được định nghĩa như sau:
Sự chuyển đổi: Kiểu1 ->Kiểu2 nghĩa là sự chuyển đổi lấy ÐTDL của một kiểu và sản sinh ra một ÐTDL "tương ứng" của một kiểu khác. Hầu hết các ngôn ngữ đều cung cấp hai phương pháp chuyển đổi kiểu:
Notification Switch
Would you like to follow the 'Cấu trúc dữ liệu' conversation and receive update notifications?