我正在處理一個圖塊編輯器。在編輯器中,您可以加載瓦片貼圖。每個瓷磚地圖可以有多個圖層。瓷磚地圖有它的圖層列表。我現在需要圖層類中的圖塊地圖屬性(比如瓦片寬度/高度等)。我現在問自己最好的辦法是什麼。從子類中訪問父屬性的最佳方法
我能在層類引入tilemap的屬性的雙向關係,使我有機會獲得的一切,我從那裏需要。但是,我將不得不照顧雙方的關係。我可以用構造函數給圖層類提供所有需要的屬性,但它們基本上變成了圖層屬性(也就是說,它們是每個圖層的不同對象)。
與2相同,但將屬性賦予具有「ref」參數的圖層。
我可以做一個叫做TileMapLayerProperties的類,在這裏我把所有的屬性都放進去然後把對象傳遞給圖層類。好處是所有的屬性都是一樣的,只有tileMapLayerProperties引用是每個實例。另一個優點是層構造器的「定義」變得更短。
所以,任何建議/技巧將不勝感激。
你是對的,屬性是不可變的,它們是int的,所以它們是複製的,這就是爲什麼我寫這部分(應該更加精確)「,但它們基本上成爲圖層屬性(又名它們是每個圖層的不同對象)」。有了ref,我想給圖層提供參考,所以當我在地圖上改變它們時,它們會在圖層中發生變化。您的界面建議聽起來很有趣,可能是最好的解決方案。 –
我結束了使用選項4 – TruthOf42