Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Giáo trình phân tích quy trình vận dụng các cú pháp trên cùng một modun với các chương trình con p1
Nội dung xem thử
Mô tả chi tiết
CHƯƠNG III: CƠ BẢN VỀ NGÔN NGỮ LẬP TRÌNH VISUAL BASIC
53
Một chương trình con đơn giản được tạo ra như sau:
Public Sub Test(ByRef a As Long, b As Long, ByVal c As Long)
a = 100: b = 200: c = 300
End Sub
Chú ý đến khai báo biến a, b và c của chương trình con này:
Ø Trước biến a là từ khóa ByRef.
Ø Trước biến b không có từ khóa, nghĩa là sử dụng kiểu mặc định của VB.
Ø Trước biến c là từ khóa ByVal.
Chương trình con thứ hai được xây dựng trên cùng một mô-đun với chương trình con trên
như sau:
Public Sub CallTest()
Dim va As Long, vb As Long, vc As Long
va = 500: vb = 500: vc = 500
' In giá trị của biến trước khi gọi chương trình con thứ nhất
Debug.Print " Cac gia tri bien truoc khi goi chuong trinh con:"
Debug.Print "va=" & Str(va)
Debug.Print "vb=" & Str(vb)
Debug.Print "vc=" & Str(vc)
' Gọi chương trình con thứ nhất
Test va, vb, vc
' In giá trị của biến sau khi gọi chương trình con thứ nhất
Debug.Print " Cac gia tri bien sau khi goi chuong trinh con:"
Debug.Print "va=" & Str(va)
Debug.Print "vb=" & Str(vb)
Debug.Print "vc=" & Str(vc)
End Sub
Trong chương trình con thứ 2 có lời gọi đến chương trình con thứ nhất để thực hiện thay đổi
giá trị của các biến. Kết quả khi thực thi chương trình con thứ 2 như sau:
Qua kết quả trên có thể thấy rằng:
Giá trị của biến có thể bị thay đổi hoặc không bị thay đổi khi chúng được truyền vào chương
trình con là phụ thuộc vào cách định nghĩa tham số trong chương trình con đó.
Ø Biến a trong Sub Test được khai báo với từ khóa ByRef và khi truyền biến ở vị trí này
(biến va trong CallTest) thì giá trị của biến ban đầu bị thay đổi tương ứng với các tác
động trong chương trình con.