2012-02-21 8 views
15

Tôi chỉ có một loạt các mã VB6 (!) Cũ được bán phá giá trên tôi và tôi tiếp tục thấy các hàm được khai báo với dấu và ở cuối tên, ví dụ: Private Declare Function ShellExecute& . . ..Tầm quan trọng của dấu và trong tên hàm VB6?

Tôi không thể tìm thấy câu trả lời cho ý nghĩa của điều này, cũng như tôi không thể phát hiện bất kỳ mẫu nào đang sử dụng hoặc chữ ký của các hàm đã được đặt tên như vậy.

Bất cứ ai cũng biết nếu các ký tự dấu sau đó có ý nghĩa gì với trình biên dịch hay ít nhất là nếu có một số quy ước mà tôi bị thiếu? Cho đến nay, tôi viết nó như là một lập trình viên lạ, nhưng tôi muốn biết chắc chắn nếu có bất kỳ ý nghĩa đằng sau nó.

Trả lời

20

Điều này có nghĩa là hàm trả về giá trị Dài (tức là số nguyên 32 bit).

Nó tương đương với

Declare Function ShellExecute(...) As Long 

Danh sách đầy đủ của hậu tố như sau:

Integer % 
Long & 
Single ! 
Double # 
Currency @ 
String $ 
12

Như Philip Sheard đã nói nó là một loại indentifier cho Long. Họ vẫn có mặt trong Net, xem này MSDN link và điều này VB6 article

Từ bài viết thứ hai:

Các quy tắc để tạo thành một tên biến hợp lệ VB như sau:

(1) Các ký tự đầu tiên phải là chữ cái A đến Z (chữ hoa hoặc chữ thường có thể được sử dụng). Ký tự thành công có thể là chữ cái, số hoặc ký tự gạch dưới (_) (không có dấu cách hoặc các ký tự khác cho phép).

(2) Ký tự cuối cùng có thể là "ký tự khai báo kiểu". Chỉ một số các loại biến thể sử dụng chúng, như hình dưới đây:

Data Type Type Declaration Character 

String   $ 
Integer  % 
Long   & 
Single   ! 
Double   # 
Currency  @  

Sử dụng kiểu khai nhân vật trong VB không được khuyến khích; phong cách hiện đại là sử dụng mệnh đề "As" trong tuyên bố khai báo dữ liệu.