我想要一個簡單的Vector2類/結構浮點x和y和幾個方法。 我仍然試圖把我的頭圍繞差異,但不能完全得到它 我知道它通常與結構完成,但我想更新每個幀的Vector2大2D陣列,這將使一個類更好比結構? 首先發布在這裏,並提前感謝所有回覆!Vector2:類或結構?
回答
會,使一類比結構
此操作更好,也不是專門的任何更好或更壞;然而,擁有很多長壽命的物體意味着你可能會遇到GC故障。它是「大型二維數組」的事實意味着您也可以通過使用結構體來節省大量開銷(對象頭)。
親愛的主席先生! **你也可以通過使用結構來潛在地節省大量的開銷(對象頭文件)**這是太多的信息供我消化。你能再解釋一下嗎? –
對我來說消化太多了,但經過一些Google搜索之後,我有點想法。 所以如果我正確地理解它,是垃圾收集一個比收集原始類型更昂貴的結構?這會讓2個浮點數組更容易嗎?但是這不會使開銷增加一倍嗎?我應該支持哪一個?他們還說,除非它是不可變的,否則不要使用結構。是不是更新被認爲是「可變性」的每一幀?感謝回覆 – Hadi
@UmairM'class'的每個實例都是一個**對象**。一個對象在堆上由*對象頭*加上實際數據組成的空間分配。值類型被分配*作爲其他東西的一部分*,並且沒有對象頭 - 類型通過擁有它的東西隱含。在數組的情況下,類型被數組*的類型隱含*。當你有數千或數百萬的小數據時,這種差異就會加起來。 –
- 1. 結構或類帶構件
- 2. C++中的Vector2類
- 3. 委託是類或結構
- 4. Swift:結構,或不結構
- 5. C# - 重置結構的類或結構的值
- 6. 結構或類,公共數據呢?
- 7. 創建涉及多個類或結構
- 8. 查詢結構或類的成員
- 9. 如何使用匿名結構或類?
- 10. Doxygen:添加新類型或結構
- 11. Pygame Vector2.as_polar()和Vector2.from_polar()方法
- 12. 結構或指針的結構?
- 13. 結構與類
- 14. 結構與類
- 15. 類別結構
- 16. C++類結構
- 17. 爲結構類
- 18. 類和結構
- 19. SFML Vector2用法
- 20. NSMutableArray或NSArray結構
- 21. 類似HTML中的結構行結構
- 22. C#分層結構分類結構
- 23. 使用php或jquery填充html表(或類似結構)
- 24. 如何在Android/SQLite中使用結構數組或類似的數據結構?
- 25. 結構內結構,能夠改變內部結構類型
- 26. C++的typedef不是一個類,結構或聯合類型
- 27. 「類名」必須是以前定義的類或結構
- 28. 列表類的類結構?
- 29. C++結構與類
- 30. 優化類結構
我投票**結構** – MrClan
我不明白的是,你給你的問題的Unity3D標籤。在引擎中已經有一個Vector2/3/4結構,所以不需要創建自己的結構。 – Everts
我認爲不斷的更新使得一個類比一個結構更好,所以我應該做一個新的Vector2類 – Hadi