Virtools指令碼語言 VSL 教程 結構

2021-09-05 21:38:10 字數 1130 閱讀 6143

結構型別是一種使用者定義的復合型別。結構可由一些不同型別的成員組成。

struct structname ;

例項:

struct person

;

每個結構成員的型別可以是基本型別、其它vsl結構或c/c++結構/類。這些型別的陣列成員也被支援。

struct car

;

要訪問結構的成員,你得使用 "." 運算子。

void setperson(person p, string name, int age, float weight)

void main()

}

當在結構上使用 =, == 及 != 運算子時,vsl編譯器為每個具有這種被過載運算子的成員呼叫合適的運算子。

對於那些沒有過載運算子的成員,這個**會產生:

operator =

code is generated to copy memory.

operator == and !=

code is generated to compare memory.

例項:

person p1;

person p2;

string name("john");

setperson(p1, name, 30, 75);

p2 = p1;
等價於:

p2.name = p1.name; // call the string operator =

p2.age = p1.age;

p2.weight = p1.weight;

p2 == p1;
等價於:

p2.name == p1.name; // call the string operator ==

p2.age == p1.age;

p2.weight == p1.weight;

p2 != p1;
等價於:

p2.name != p1.name; // call the string operator !=

p2.age != p1.age;

p2.weight != p1.weight;

Virtools指令碼語言 VSL 教程 函式

函式定義語法 函式定義確立了函式的名稱 它的返回值型別 它的形參的型別和數量 及函式主題。returntype functionname paramlist paramlist parameter parameter type parametername 例項 int square int i 函式...

Virtools指令碼語言 VSL 教程 列舉

enum關鍵字指定了乙個列舉型別。列舉型別是一種使用者定義的型別,由一套叫做計數器 enumerator 的賦之以名稱的常量組成。預設情況下,第乙個計數器有乙個為0的值,每個後續的計數器都比前乙個的值更大 除非你顯示地為特定計數器指定乙個值 定義語法 enum enumname enummember...

Virtools指令碼語言 VSL 教程 函式

函式定義語法 函式定義確立了函式的名稱 它的返回值型別 它的形參的型別和數量 及函式主題。returntype functionname paramlist paramlist parameter parameter type parametername 例項 int square int i 函式...