vb 6.0允許使用自定義型別的資料,但是vb.net,只允許定義結構型別的資料,本例主要介紹如何定義結構型別的變數。
[ ] [ accessmodifier ] [ shadows ] [ partial ] _
structure name [ ( of typelist ) ]
[ implements inte***cenames ]
[ datamemberdeclarations ]
[ methodmemberdeclarations ]
end structure
表 1
術語definition
attributelist
可選。 請參閱特性列表。
accessmodifier
可選。 可以是以下各項之一:
- 公有
- 保護
- 朋友
- 私有
- 受保護的朋友
- 私有保護
請參閱 access levels in visual basic。
shadows
可選。 請參閱陰影。
partial
可選。 指示結構的分部定義。 請參閱部分。
name
必需。 此結構的名稱。 請參閱 declared element names。
of
可選。 指定這是乙個泛型結構。
typelist
如果使用 of 關鍵字,則為必需。 此結構的型別引數列表。 請參閱型別列表。
implements
可選。 指示此結構實現乙個或多個介面的成員。 請參閱implements 語句。
inte***cenames
如果使用implements
語句,則是必需的。 此結構實現的介面的名稱。
datamemberdeclarations
必需。 零個或多個const
、dim
、enum
或event
語句宣告結構的資料成員。
methodmemberdeclarations
可選。function
、operator
、property
或sub
過程的零個或多個宣告,它們充當結構的方法成員。
end structure
必需。 終止structure
定義。
定義結構型別需要注意的是:在結構中的陣列型別不能預先指定上界,應該用動態陣列;結構體中成員資料的作用域不同,訪問許可權不同。這裡比較兩種,一種是public型別,一種是private型別。前者型別的成員存使用時不受限制,使用這種變數的公有成員,直接用結構變數名.成員名。後者型別的成員只能由結構體內部使用,否則會出錯。
結構體中可以定義屬性、函式和過程。
module module1
public structure student_info
public sname as string
public s*** as string
public ascore() as single
private sage as byte
public property age as byte
getreturn sage
end get
set(byval value as byte)
sage = value
end set
end property
end structure
sub main()
dim stu(10) as student_info
dim icount as integer, jcount as integer = 0
dim ***() as string =
randomize()
for icount = 0 to 10
stu(icount).sname = "第" & cstr(icount + 1) & "個學生"
stu(icount).s*** = ***(jcount)
jcount = 1 - jcount
redim stu(icount).ascore(2)
stu(icount).ascore(0) = int(rnd() * 100) / 10 + 90
stu(icount).ascore(1) = int(rnd() * 100) / 10 + 90
stu(icount).ascore(2) = int(rnd() * 100) / 10 + 90
stu(icount).age = cbyte(rnd() * 10) + 20
next
for icount = 0 to 10
console.writeline(stu(icount).sname)
console.writeline(stu(icount).s***)
for i = 0 to 2
console.writeline(stu(icount).ascore(i))
next
console.writeline(stu(icount).age)
next
console.readline()
end sub
end module
自定義資料型別
include include using namespace std typedef double weight,tall struct student int main cout for int i 0 i 4 i return 0 貼上正確的輸出 這裡tall和weight都是自己可以輸入的 ...
自定義型別
typedef型別 typedef 已有型別 新建型別 示例 typedef double area,volume typedef int number number i1 area a enum enum 列舉型別名 enum week 預設sun 0,可以比較 如果修改必須形如enum week...
自定義型別
下面列舉幾種c語言中常用的自定義資料型別 1.結構體型別 當描述乙個整型變數時,可以用int,描述字元型變數時,可以用char,但要描述乙個學生時,因為這個學生包含的資訊很多,比如姓名,性別,年齡等,不能通過單一的型別來描述,所以,這裡引入結構體型別,將某個事物的共有屬性集合在一起,宣告乙個結構體型...