Giáo trình phân tích quy trình tự động hóa với Autocad 3d cho thiết kế công trình giao thông p7 pot - Pdf 19

C
C
H
H
Ư
Ư
Ơ
Ơ
N
N
G
G


I
I
I
I
I
I
:
:


C
C
Ơ
Ơ


B


L
L


P
P


T
T
R
R
Ì
Ì
N
N
H
H


V
V
I
I
S
S
U
U
A

Variant chứa Single
7-vbDate
Variant chứa Date/Time
8-vbString
Variant chứa String
9-vbObject
Variant chứa một Object
11-vbBoolean
Variant chứa Boolean
5.8. Kiểu tự định nghĩa (user-defined type)
Kiểu tự định nghĩa là kiểu dữ liệu do người dùng định nghĩa, tương tự như kiểu bản ghi
(
Record) trong ngôn ngữ lập trình Pascal hay kiểu cấu trúc (Struct) trong ngôn ngữ lập trình
C. Kiểu tự định nghĩa bao gồm nhiều trường dữ liệu, mỗi trường dữ liệu có thể là các kiểu dữ
liệu cơ bản hoặc các kiểu tự định nghĩa khác.
Ví dụ, khi đo toàn đạc bằng máy kinh vĩ cơ, với mỗi điểm đo ta cần lưu lại các thông tin sau:
Ký hiệu Ý nghĩa Kiểu giá trị
TrM
Số hiệu trạm đặt máy Integer
STT
Thứ tự của điểm đo Integer
DT
Số đọc dây trên Double
DG
Số đọc dây giữa Double
DD
Số đọc dây dưới Double
H
Góc bằng Double
V

.DD = 2110
.H = 130.5
.V = 78.25
.MT = “Goc nha C4”
End With
P_Array(1) = P1
Từ khóa: With … End With dùng để tránh phải nhập lại nhiều lần tên biến kiểu dữ liệu tự
định nghĩa. Dấu chấm ( . ) được sử dụng để thao tác với các thành phần bên trong của biến có
kiểu dữ liệu tự định nghĩa. Ví dụ sau là tương đương với ví dụ trên, nhưng không sử dụng cặp
từ khóa
With … End With, chú ý là dấu chấm ( . ) luôn có:
‘Khai báo biến sử dụng kiểu dữ liệu tự định nghĩa
Dim P1 As DiemDo
Dim P_Array(1 to 1000) As DiemDo
P1.TrM = 1
P1.STT = 1
P1.DT = 2130
P1.DG = 2120
P1.DD = 2110
P1.H = 130.5
P1.V = 78.25
P1.MT = “Goc nha C4”
P_Array(1) = P1
5.9. Kiểu lớp (Class)
Kiểu lớp (Class) là một mở rộng của kiểu dữ liệu tự định nghĩa, sự khác biệt cơ bản ở đây là
trong kiểu lớp còn có những đoạn chương trình dùng để xử lý chính những dữ liệu trong nó. Dữ
liệu bên trong lớp thường được gọi là các thuộc tính (
Properties), còn những đoạn chương
trình trong lớp để xử lý dữ liệu này thực chất là các Hàm / Thủ tục (Function / Sub) được định
nghĩa bên trong lớp và thường được gọi là các Phương thức (Methods). Một biến có kiểu dữ

C
Ơ
Ơ


B
B


N
N


V
V




N
N
G
G
Ô
Ô
N
N


N

I
S
S
U
U
A
A
L
L


B
B
A
A
S
S
I
I
C
C



35

Như vậy lớp có thể gồm các thành phần sau:
Ø
Ø


Ø
Ø

Khi biến khai báo trong chương trình con nào thì phạm vi sử dụng của nó được giới hạn
trong chính chương trình con đó. Biến loại này được gọi là biến cục bộ.

Hình III-10: Phạm vi sử dụng của biến được khai báo trong chương trình con
Ø
Ø

Nếu biến được khai báo ở cấp mô-đun và biến được khai báo trong chương trình con có
tên trùng nhau thì ở bên trong chương trình con, biến được sử dụng là biến được khai báo
bên trong nó. Ta xét ví dụ sau:
Option Explicit
Dim a As Double, b As Double
Public Sub Test1()
a = 100 : b = 200 36
End Sub
Public Sub Test2()
Dim a As Double, c As Double
Test1
c = a + b
Debug.Print "a = "; a;
Debug.Print "b = "; b;
Debug.Print "c = "; c;
End Sub
Biến a và b được khai báo ở cấp mô-đun, nghĩa là mọi chương trình con trong mô-đun này đều

Ơ
N
N
G
G


I
I
I
I
I
I
:
:


C
C
Ơ
Ơ


B
B


N
N


P


T
T
R
R
Ì
Ì
N
N
H
H


V
V
I
I
S
S
U
U
A
A
L
L


B

nếu trong một mô-đun có khai báo lựa chọn
Option Private Module thì tất cả các
thành phần dữ liệu hay chương trình được khai báo Public trong mô-đun đó chỉ có
phạm vi hoạt động trong nội bộ dự án chứa mô-đun mà không thể được tham chiếu từ
những dự án khác trong ứng dụng.

Hình III-13: Khai báo tùy chọn phạm vi biến ở mức dự án.
Ø
Ø

Sử dụng từ khóa
Private để xác định phạm vi hoạt động của biến là trong nội bộ của
mô-đun đó, tất cả các chương trình con hay bất cứ thành phần nào của mô-đun này đều có
thể sử dụng biến loại này nhưng chúng không thể truy cập được từ những mô-đun hay
Userform khác trong dự án.

Hình III-14: Phạm vi sử dụng của biến tương ứng với từ khóa Public và Private.
CHÚ Ý Khi khai báo kiểu dữ liệu người dùng tự định nghĩa hoặc các chương trình con
trong một mô-đun, nếu không chỉ rõ phạm vi hoạt động thì pham vi hoạt động mặc định là
Public.
Để tránh các nhầm lẫn do không nhớ phạm vi hoạt động mặc định, người dùng nên chỉ rõ
phạm vi hoạt động của chương trình hay dữ liệu ngay khi khai báo.
Ø
Ø

Ngoài ra, trong các mô-đun lớp (Class Module) hoặc mô-đun lệnh của UserForm còn có
thể sử dụng từ khóa
Friend để xác định phạm vi hoạt động của một chương trình con
(phương thức). Khi sử dụng từ khóa này, chương trình con có thể được truy xuất từ mọi
nơi trong nội bộ dự án (Project) chứa nó nhưng không thể được truy xuất trong những dự


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status