Giáo trình phân tích kiểu dữ liệu sơ cấp,sự đặc tả và nguyên tắc cài đặt một kiểu dữ liệu p5

Phương thức xây dựng bình thường point & operator= (const point & p ) // Định nghĩa toán tử gán { x = ; y = ; // Gán dữ liệu return * this; } }; // term Sự khác nhau cuối cùng của phép gán là ở cách thức tiến hành gán trị. Xét lệnh gán của Pascal "A := B", ở Pascal cũng như một số ngôn ngữ khác, điều này có nghĩa là: | Chương II Kiểu dữ li float x float y public point x y Phương thức xây dựng mặc nhiên point float a float b x a y b Phương thức xây dựng bình thường point operator const point p Định nghĩa toán tử gán x y Gán dữ liệu return this term Sự khác nhau cuối cùng của phép gán là ở cách thức tiến hành gán trị. Xét lệnh gán của Pascal A B ở Pascal cũng như một số ngôn ngữ khác điều này có nghĩa là Gán bản sao của giá trị của biến B cho biến A . Bây giờ ta lại xét lệnh gán A B của SNOBOL4. Trong SNOBOL4 thì nó có nghĩa là Tạo một biến tên A tham chiếu tới ĐTDL mà B đã tham chiếu . Trong SNOBOL4 cả A và B cùng trỏ tới một ĐTDL. Pascal A B Sao chép ĐTDL khi gán Trước Sau A w B DE A B SNOBOL4 A B Sao chép sự trỏ đến ĐTDL khi gán Trước khi gán Sau khi gán A I ụ l7 A __ __ B B ---I k Cách thực hiện lệnh gán của SNOBOL4 rõ ràng là đã tạo ra một sự lắm tên. Sự khởi tạo biến Khởi tạo một biến là gán cho biến đó một giá trị đầu tiên. Một biến khi được tạo ra thì sẽ được cấp phát ô nhớ nhưng nó vẫn chưa được khởi tạo. Khi nó được gán một giá trị đầu tiên thì mới được khởi tạo. Các biến chưa được khởi tạo là nguồn gốc của các lỗi lập trình. Khi một biến được cấp phát ô nhớ mà chưa được khởi tạo thì trong ô nhớ của nó cũng có một giá trị ngẫu nhiên nào đó. Thường là một giá trị rác Khi một ĐTDL nào trước đó đã bị hủy bỏ nhưng giá trị của ĐTDL này trong ô nhớ vẫn còn giá trị này gọi là giá trị rác . Điều nguy hiểm là giá trị rác này vẫn là một giá trị hợp lệ. Vì thế chương trình có thể xử lý trên giá trị rác này một cách bình thường và chúng ta không thể kiểm sóat được kết quả xử lý đó. 19 Chương II Kiểu dữ i Vì tính chất nghiêm trọng như đã nói trên của biến chưa được khởi tạo các ngôn ngữ lập trình có thể sử dụng các giải pháp sau để khắc phục Nếu biến chưa được khở tạo thì sẽ có giá trị NULL Khi một biến mới được tạo ra ô nhớ cấp phát cho nó phải chứa một dãy các bit biểu diễn cho một giá trị NULL . Tùy thuộc vào kiểu .

Không thể tạo bản xem trước, hãy bấm tải xuống
TỪ KHÓA LIÊN QUAN
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.