union在XMMATRIX裡的妙用

2021-07-02 04:47:38 字數 458 閱讀 1743

剛才翻xnamath.h看struct xmmatrix的用法,發現裡面的資料成員用了union,於是去補了下知識……

union是一種記憶體共用型別,比如下面

struct st

;union un

;

sizeof(st)的話是8,sizeof(un)是4,un裡的兩個變數都是用同一片記憶體,修改乙個就會直接影響到另外乙個,滿足一些特殊的資料儲存要求

在xmmatrix裡面就可以這樣使用的

union

;float m[4][4];

};

這裡的r[4],struct和m[4][4]其實就是同一片資料。好處是啥呢?就是使用時可以直接_11,_12這樣訪問矩陣單個資料,也可以通過r[0],r[1]這樣訪問矩陣的某一行,或者用二維陣列的方式m[0][0]這樣去使用,而不需要專門去寫處理轉換函式

在時光裡跋涉

時光去了 我們去了 我們彷彿坐在一抹火燒雲的末端,我們沸騰,沸騰,沸騰到冷卻。我們的天空依然很低,很低,我們微弱呼吸著稀薄的空氣,我們沒有翅膀,但是我們依然想像飛翔 我們必然因為沉重而從雲端落下,在泥土中活命。跋涉,從夜晚開始。我們再一次看到了西天的火燒雲。我們揹負太多宿命的災禍,和霜雪,以至於我們...

ListView在ScrollView裡只顯示單行

文章參考 scrollview是常用的滑動顯示內容的控制項,有時為了適應設計需求裡面會包含諸多態別的內容控制項,比如textview imageview listview等混合使用 而在使用listview時,最後執行往往發現listview只顯示一行,listview中所有的item只能在乙個it...

跑在月光裡

最近心血來潮,打算去跑跑步,鍛鍊身體,報效祖國。磨嘰了乙個禮拜,昨天終於穿著睡衣出門了。我們家附近有個很大的運動場,裡面有打籃球的,踢足球的,還有全民健身器材。白天足球場收費,晚上沒人管。塑膠跑道和水泥地板完全不一樣啊,好像有彈性似的,n年沒運動過的我都跑了3圈 當然中間有休息,慢走了一圈。在我如蝸...