tailieunhanh - Buit Windows By C.Net part 5
Thư viện DLL được giải phóng khỏi vùng nhớ của tiến trình do 1 trong 3 nguyên nhân: nạp DLL không thành công, tiến trình kết thúc, hay tiến trình gọi hàm FreeLibrary | CHƯƠNG 1-3 Ngôn ngư trung gian IL 43 SjjU 46 box mscorlib 47 call void mscorlib WirteLine class class System Object 48 49 ret 50 51 Mã lệnh của hàm .cil trong ví dụ đưa ra một chỉ thị mới locals. Chỉ thị này được dùng để dành trước một vùng cho các biến cục bộ trong hàm hiện hành. Phương thức add được định nghĩa ở dòng 10 khai báo một vùng cho hai biến cục bộ. Các tham số được truyền đốn phương thúc add sẽ được nạp vào vùng dành trước qua lệnh ỉdarg. Sau khi lệnh add được gọi bước kế tiếp là lưu trữ kết quả và sau đó đẩy kết quả trở lên ngăn xếp gọi. Phương thức main chỉ cấp phát không gian cho một biến cục bộ đơn lẻ. Biến cực bộ này sẽ dược dùng đế giữ kết quá được trả về từ phương thức add do người dùng định nghĩa. Quá trình đấy các giá trị 10 và 5 lên ngăn xếp stack gọi phương thức add và lấy kết quà tương ứng được mô tá ở hình . Bạn rất có thế đã chú ý lệnh box ơ dòng 46. Boxing là một cái gì đó mới mẻ đối với NET. Boxing làm cho các kiêu giá trị chắng hạn như các kiểu cơ sở được xem như các đối tượng. 4. LỚP CLASSES Như đã được phát biểu trước đây IL tự nó không là một ngôn ngữ hướng đối tượng OO language . Mặc dù IL hồ trợ nhiều ngôn ngữ nguồn source language và các cấu trúc IL cung cấp khái niệm về việc tạo các lớp class và tạo các thể hiện instance của lớp. Xem xét IL về việc khai báo và tạo các lớp class sẽ cho bạn hiểu nhiều hơn về Common Language Specification CLS . Ví dụ trình bày mã IL cho việc tạo và sử dựng một lớp class . Ví dụ Tạo lớp trong ĨL 1 . assembly class test as class_test 2 3 . ver 1 0 0 0 4 5 6 7 .module class__test. exe 8 9 10 Tạo một lớp Dog với hai trường toàn cục public fields 44 PHẦN I Mở đầu 11 12 .class public auto ansi Dog extends mscorlib 13 14 các trường dữ liệu chung public data fields 15 . field publi C class System. String m_Name 16 . field public int32 m Age 17 18 19 Tạo một phương thức để hiển thị các trường 20 .method public hidebysig instance .
đang nạp các trang xem trước