Cơ chế truyền tham số (tt)

Một phần của tài liệu Tài liệu Giáo trình môn tin học ppt (Trang 126 - 128)

I E= T*R

Cơ chế truyền tham số (tt)

‰ Dùng từkhóaByValkết hợp với tham sốhình thứcđểkhai báo nóđược truyền bằng giá trị. Khi gọi thủtục, giá trịcủa tham sốthựcsẽ được truyền cho thủtục cần thực thi. Nhờcách truyền tham sốnày mà thủtục cần thực thi sẽkhông thểtruy xuất dữliệu của thủtục gọi. Tuy nhiên cách truyền bằng giá trịchỉthích hợp cho các tham sốIN (truyền từ

phần tửgọiđến thủtục cần gọi) có kiểu vô hướng (scalar).

‰ Đểtruyền hiệu quảtham sốcó nội dung chiếm nhiều ô nhớhay đểnhận kết quảta sẽphải dùng cơchếtruyền bằng tham khảo (địa chỉ). Để định nghĩa tham sốhình thứcđược truyền bằng tham khảo, ta dùng từkhóa

ByRefkết hợp với tham sốhình thứcđó. Khi gọi thủtục, địa chỉcủa tham sốthựcsẽ được truyền cho thủtục cần thực thi. Vớiđặcđiểm này, tham sốthực phải là biến chứkhông thểlà biểu thức.

‰ Lưu ý rằng nếu ta không dùng từkhóa ByRef hay ByVal kết hợp với tham sốhình thức thì default nóđược truyền bằng tham khảo.

Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM

Môn : Tin học

Slide 251 // version truyền bằng giá trị

Private Sub Hoanvi1(ByVal x As Integer, ByVal y As Integer) Dim tmp As Integer

tmp = x x = y y = tmp End Sub

// version truyền bằng tham khảo

Private Sub Hoanvi2(ByRef x As Integer, ByRef y As Integer) Dim tmp As Integer

tmp = x x = y y = tmp End Sub

// version truyền bằng tham khảo

Private Sub Hoanvi3(x As Integer, y As Integer) Dim tmp As Integer tmp = x x = y y = tmp End Sub Cơchếtruyn tham s (tt) Chương 9 : Định nghĩa thủtục & sửdụng

Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM

Môn : Tin học

Slide 252

Hãy khảo sát kỹ3 thủtục hoán vịdữliệu trong slide trước. Bây giờhãy chú ý tới việc sửdụng chúng và kết quả đạtđược :

...

Dim intN As Integer Dim intM As Integer

intN = 4 intM = 8

Call Hoanvi1(intN, intM) ' kết quảintN = 4 và intM = 8 (khôngđổi) Call Hoanvi2(intN, intM) ' kết quảintN = 8 và intM = 4 (đã hoán vị được) Call Hoanvi3(intN, intM) ' kết quảintN = 4 và intM = 8 (đã hoán vị được) ...

Cơchếtruyn tham s (tt)

Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM

Môn : Tin học

Slide 253

9.6 Các thtc định sn ca VB

‰ Vềnguyên tắc, người lập trình phảiđịnh nghĩa thủtục (Sub, Function, Property) trước khi có thểsửdụng lại (gọi) nó. Tuy nhiên, VB đãđịnh nghĩa rất nhiều thủtục dạng Sub, Function đểthực hiện các chức năng rất phổbiến, người lập trình có thểgọi chúng bất cứkhi nào cần thiết. Ta gọi các thủtục này là các thủtụcđịnh sẵn của VB.

‰ Nếu chưađòi hỏiđộchính xác cao, người ta còn gọi các thủtụcđịnh sẵn của VB là các lệnh thực thi.

‰ Sauđây ta chúng ta hãy làm quen với 1 sốthủtục thường dùng. (adsbygoogle = window.adsbygoogle || []).push({});

Chương 9 : Định nghĩa thủtục & sửdụng

Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM

Môn : Tin học

Slide 254

Một phần của tài liệu Tài liệu Giáo trình môn tin học ppt (Trang 126 - 128)