các kiểu dữ liệu trong vb
DESCRIPTION
Chương 5. Các kiểu dữ liệu trong VB. Nguyên tắc đặt tên biến. Tên biến có thể dài đến 255 ký tự. Ký tự đầu tiên phải là một ký tự chữ (letter). - PowerPoint PPT PresentationTRANSCRIPT
Các kiểu dữ liệu trong VBCác kiểu dữ liệu trong VB
Chương 5Chương 5
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 22
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Nguyên tắc đặt tên biếnNguyên tắc đặt tên biếnTên biến có thể dài đến 255 ký tự.
Ký tự đầu tiên phải là một ký tự chữ (letter).
Các ký tự tiếp theo có thể là các ký tự chữ (letter), ký số (digit), dấu gạch dưới (nghĩa là không được dùng các ký tự đặc biệt như các ký tự : ^, &, ), (,%, $, #, @, !, ~, +, -, *, …).
Không phân biệt chữ HOA (upper case) hay chữ thường (lower case).Ví dụ: Tên biến hợp lệ Tên biến không hợp lệ
+ Base1_ball + Base.1 : vì có dấu chấm
+ ThisIsLongButOk + Base&1 : vì có dấu &
+ 1Base_Ball : ký tự đầu là 1 số
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 33
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Các vấn đề xoay quanh tên biếnCác vấn đề xoay quanh tên biến
Người sử dụng phải lựa chọn giữa Người sử dụng phải lựa chọn giữa tên ngắntên ngắn và và tên có ý tên có ý nghĩanghĩa..Ví dụ :Ví dụ : x, y, z, a, b, c là tên ngắn nhưng ít có ý nghĩa.x, y, z, a, b, c là tên ngắn nhưng ít có ý nghĩa.
InterestingRate, InfraRed có ý nghĩa nhưng dài.InterestingRate, InfraRed có ý nghĩa nhưng dài.
Tránh đặt tên trùng với các Tránh đặt tên trùng với các từ khóatừ khóa hay hay từ dành riêngtừ dành riêng của của ngôn ngữ.ngôn ngữ.Ví dụ : Sub, End, Print, . . .Ví dụ : Sub, End, Print, . . .
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 44
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Các kiểu dữ liệu cơ bản định sẵn của VBCác kiểu dữ liệu cơ bản định sẵn của VB
ByteByte : : dài dài 1 byte, số nguyên không dấu.1 byte, số nguyên không dấu.
BooleanBoolean : : dài dài 2 bytes, luận lý 2 bytes, luận lý TrueTrue or or FalseFalse
IntegerInteger : : dài dài 2 bytes, số nguyên (có dấu).2 bytes, số nguyên (có dấu).
LongLong : : dài 4 bytes, số nguyên.dài 4 bytes, số nguyên.
SingleSingle : : dài dài 4 bytes, số thực chính xác đơn (7 chữ số).4 bytes, số thực chính xác đơn (7 chữ số).
DoubleDouble :: dài dài 8 bytes, số thực chính xác kép (15 chữ số).8 bytes, số thực chính xác kép (15 chữ số).
CurrencyCurrency :: dài dài 8 bytes, tiền tệ (14 con số, 4 số lẻ).8 bytes, tiền tệ (14 con số, 4 số lẻ).
Decimal : dài 16 bytes, số nguyên (28 chữ số).
Date : dài 8 bytes; giữ ngày-tháng-năm, giờ-phút-giây.
Object : dài 4 bytes; chứa tham khảo đến đối tượng (không phải
đối tượng).
String : dài 10 bytes + độ dài của chuỗi, chứa văn bản (tối đa
2G ký tự).
String*n : chuỗi có độ dài cố định n bytes.
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 55
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Các kiểu dữ liệu mở rộngCác kiểu dữ liệu mở rộngVariant : kiểu dữ liệu đa năng, có thể chứa dữ liệu thuộc các kiểu cơ bản.
Chứa số : dài 16 bytes.
Chứa chuỗi : dài 22 bytes + độ dài chuỗi ký tự.
User-defined : kiểu dữ liệu người sử dụng định nghĩa (còn được gọi là kiểu record), dùng lệnh Type / End Type để định nghĩa.Type SystemInfo
CPU As Variant
Memory As Long
DiskDrives(25) As String ' Fixed-size array.
VideoColors As Integer
Cost As Currency
PurchaseDate As Variant
End Type
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 66
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Kiểu dãy (array)Kiểu dãy (array)Dãy là kiểu dữ liệu gồm nhiều phần tử có cùng kiểu dữ liệu cơ sở, dùng chung một tên và phân biệt với nhau bởi chỉ số (index).
Ví dụ : Dim vector(0 to 9) As Integer
là biến dãy có 10 phần tử thuộc kiểu nguyên.
tham khảo : vector(0), vector(1), . . . vector(9).
vector
vector(0) vector(9)Chiều dài dãy = 20 bytes
Mô tả đặc tính chi tiết các kiểu biến xem trong sách
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 77
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Kiểu Class đối tượngKiểu Class đối tượng
Sử dụng các class đối tượng có sẳn của VB thông qua tên Sử dụng các class đối tượng có sẳn của VB thông qua tên class.class.
Tên class đối tượng có sẳn được xem như Tên class đối tượng có sẳn được xem như tên kiểu dữ liệutên kiểu dữ liệu..
Ta cũng có thể dùng các class đối tượng của người khác Ta cũng có thể dùng các class đối tượng của người khác xây dựng thông qua công nghệ COM, ActiveX Control.xây dựng thông qua công nghệ COM, ActiveX Control.
Tên class
Tên class là tên kiểu dữ liệu
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 88
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Ví dụ về class có sẳnVí dụ về class có sẳn
Tạo form có dạng sau :Tạo form có dạng sau :
Thêm đoạn code sau vàoThêm đoạn code sau vàoPrivate Sub Private Sub Form_LoadForm_Load()()
Dim Dim xx As As CommandButtonCommandButton
Set Set xx = = cmdOKcmdOK
xx.Caption = ".Caption = "OKOK""
End SubEnd Sub
Lúc chạy sẽ như hình bênLúc chạy sẽ như hình bên
(Name) = cmdOK
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 99
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Tạo class đối tượng mớiTạo class đối tượng mới
Dùng class module.Dùng class module.
Định nghĩa các Định nghĩa các thuộc tínhthuộc tính và và methode methode của đối tượng.của đối tượng.
Debug các methode . Debug các methode .
Định nghĩa thêm 2 Định nghĩa thêm 2 methodemethode đặc biệt :đặc biệt :
Class_Initialize()Class_Initialize() để để khởi tạo đối mới sinh khởi tạo đối mới sinh ra.ra.
Class_Terminate()Class_Terminate() để để thu hồi đối tượng.thu hồi đối tượng.
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 1010
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Tên biến theo phong cách HungarianTên biến theo phong cách Hungarian
Có tác dụng gợi nhớ về kiểu dữ liệu của biến.Có tác dụng gợi nhớ về kiểu dữ liệu của biến.
Dùng thêm các tiếp đầu ngữ gợi nhớ sau :Dùng thêm các tiếp đầu ngữ gợi nhớ sau :String str Integer int Single sng Currency cur
Boolean bln Long lng Double dbl Variant vnt
Ví dụ : Dim sngDistance As single
Dim blnNguyenTo As Boolean
Charles Simonge, lập trình viên gốc Hungari của Miscrosoft
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 1111
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Lưu ý khi sử dụng biếnLưu ý khi sử dụng biến
Vấn đề trùng tên.Vấn đề trùng tên.Cùng ngữ cảnh : không được phép.Cùng ngữ cảnh : không được phép.
Khác ngữ cảnh : được phép.Khác ngữ cảnh : được phép.
Các tiếp vĩ ngữ dùng để định nghĩa tắt không được tính vào Các tiếp vĩ ngữ dùng để định nghĩa tắt không được tính vào tên biến.tên biến.Ví dụ :Ví dụ : xx!! và x và x## là trùng tên. là trùng tên.
Trị ban đầu của biến.Trị ban đầu của biến.Variant : trị Empty (rỗng).Variant : trị Empty (rỗng).
String : "" (chuỗi rỗng).String : "" (chuỗi rỗng).
Số : 0Số : 0
Gán trị mới vào biến thì Gán trị mới vào biến thì trị cũ bị mấttrị cũ bị mất..
Tốt nhất nên khởi động trị cho biến trước khi sử dụng
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 1212
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Tầm vực của biếnTầm vực của biếnToàn cụcToàn cục
Dùng Dùng Public Public thay cho Dim ở thay cho Dim ở cấp module (Standard module)cấp module (Standard module)..Ví dụ :Ví dụ : Public x As SinglePublic x As Single
Cục bộ trong moduleCục bộ trong moduleDùng Dùng PrivatePrivate hay hay DimDim ở cấp module (General). ở cấp module (General).
Ví dụ : Private x As IntegerVí dụ : Private x As Integer
Cục bộ trong thủ tụcCục bộ trong thủ tụcDùng Dùng DimDim hay hay StaticStatic ở cấp độ thủ tục (trong Sub hay ở cấp độ thủ tục (trong Sub hay Function)Function)
Ví dụ :Ví dụ :Private Sub Command1_Click()Private Sub Command1_Click()
Dim x As DoubleDim x As Double. . .. . .
End SubEnd Sub
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 1313
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Thời gian sống của biếnThời gian sống của biến
Biến toàn cụcBiến toàn cục : xuất hiện và mất đi theo dự án. : xuất hiện và mất đi theo dự án.
Biến cục bộ trong moduleBiến cục bộ trong module : xuất hiện và mất đi theo module. : xuất hiện và mất đi theo module.Standard module : cùng lúc với dự án.Standard module : cùng lúc với dự án.
Class và form module : xuất hiện theo yêu cầu của dự án.Class và form module : xuất hiện theo yêu cầu của dự án.
Biến thuộc tính của đối tượng tồn tại theo đối tượng.Biến thuộc tính của đối tượng tồn tại theo đối tượng.
Biến cục bộ trong thủ tụcBiến cục bộ trong thủ tục : được tạo ra khi vào thủ tục và : được tạo ra khi vào thủ tục và mất đi khi làm xong phát biểu cuối cùng của thủ tục.mất đi khi làm xong phát biểu cuối cùng của thủ tục.
Thời gian sống của biến liên quan đến giá trị chứa trong Thời gian sống của biến liên quan đến giá trị chứa trong biến. Như vậy, muốn xem giá trị chứa trong một biến ta biến. Như vậy, muốn xem giá trị chứa trong một biến ta phải xem lúc biến đó còn tồn tại.phải xem lúc biến đó còn tồn tại.
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 1414
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Kéo dài thời gian sống của biếnKéo dài thời gian sống của biến
Chuyển Chuyển cấp khai báocấp khai báo biến. Chẳng hạn, thay vì dùng biến biến. Chẳng hạn, thay vì dùng biến cục bộ trong thủ tụccục bộ trong thủ tục thì chuyển sang dùng biến thì chuyển sang dùng biến cục bộ trong cục bộ trong modulemodule..
Dùng biến kiểu Dùng biến kiểu StaticStatic là biến có là biến có tầm vực cục bộ trong thủ tầm vực cục bộ trong thủ tụctục nhưng có nhưng có thời gian sống theo dự ánthời gian sống theo dự án..
Ví dụ :Ví dụ :
Private Sub SoNguyenTo ()Private Sub SoNguyenTo ()
DimDim i As Integer, n As Integer i As Integer, n As Integer
Static Static SoNgTo As BooleanSoNgTo As Boolean
. . .. . .
End SubEnd Sub
Lưu nội dung biến lên Lưu nội dung biến lên đĩađĩa, biến sẽ tồn tại giữa những lần , biến sẽ tồn tại giữa những lần chạy các dự án khác nhau.chạy các dự án khác nhau.
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 1515
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Trị ban đầu của biếnTrị ban đầu của biến
Thường các biến được tạo ra sau khi dự án chạy và có trị Thường các biến được tạo ra sau khi dự án chạy và có trị ban đầu lấy ngẫu nhiên trong bộ nhớ máy tính.ban đầu lấy ngẫu nhiên trong bộ nhớ máy tính.
Việc Việc gán trị ban đầugán trị ban đầu cho biến trước khi sử dụng là cho biến trước khi sử dụng là cần thiếtcần thiết..
Có 3 cách thiết lập (gán) trị cho 1 biến :Có 3 cách thiết lập (gán) trị cho 1 biến :Qua tương tác với người dùng : biến gắn liền với đối tượng Qua tương tác với người dùng : biến gắn liền với đối tượng giao diện sẽ được gán giá trị mà người dùng nhập vào.giao diện sẽ được gán giá trị mà người dùng nhập vào.
Qua các tham số khi gọi thủ tục.Qua các tham số khi gọi thủ tục.
Dùng phát biểu gán với cú pháp sau :Dùng phát biểu gán với cú pháp sau :
<tên biến><tên biến> == <biểu thức><biểu thức>
Biểu thứcBiểu thức là cách tính giá trị được gán vào biến (xem là cách tính giá trị được gán vào biến (xem chương 7).chương 7).
Biểu thức Biểu thức đơn giản nhất là một giá trị (xem chương 6).đơn giản nhất là một giá trị (xem chương 6).
Môn Tin họcMôn Tin họcChương 5 : Các kiểu dữ liệu trong VBChương 5 : Các kiểu dữ liệu trong VB
Slide Slide 1616
Khoa Khoa học & Kỹ thuật máy tínhKhoa Khoa học & Kỹ thuật máy tínhTrường ĐH Bách Khoa Tp.HCMTrường ĐH Bách Khoa Tp.HCM
Hằng gợi nhớ (Constant)Hằng gợi nhớ (Constant)
Hằng gợi nhớHằng gợi nhớ là một là một giá trịgiá trị đã được đặt tên theo qui định đã được đặt tên theo qui định của cú pháp.của cú pháp.
Const <tên hằng> = <giá trị>
Ví dụ : Const PI = 3.1416
Lợi ích khi sử dụng hằng thay cho giá trị :Chương trình sẽ trong sáng, dễ đọc hơn.
Tránh sai sót khi thay đổi một giá trị dùng tại nhiều nơi trong chương trình.
Tiết kiệm được bộ nhớ so với việc dùng biến.
Rút ngắn được các câu lệnh quá dài.