D Tuple 應(yīng)用:為 struct 添加成員
D的文檔里說 struct/class 的 .tupleof 屬性可以把一個 struct 的所有成員變量轉(zhuǎn)換為一個 tuple。那么反過來讓 tuple 作為 struct 的成員可不可以呢?答案是可以,因?yàn)?tuple相當(dāng)一個可以存放不同元素類型的靜態(tài)數(shù)組,我們只要在 struct 中聲明一個 Tuple 實(shí)例就能達(dá)到目的:
D 代碼
struct Foo(Tuple...)
{
Tuple fields;
}
alias Foo!(int, long, char) Foobar;
Foobar bar;
這樣就相當(dāng)于手寫:
D 代碼
struct Foobar
{
int field0;
long field1;
char field2;
}
當(dāng)訪問 bar 中的元素時,只需:
D 代碼
bar.fields[0] = 1; // Tuple 第一個元素是 int 類型
bar.fields[2] = 'A';
...
更多信息請登陸http://61.191.27.74:802/ 最后,歡迎加入http://61.191.27.74:802/的會員
安徽新華電腦學(xué)校專業(yè)職業(yè)規(guī)劃師為你提供更多幫助【在線咨詢】