iT邦幫忙

0

unity 記憶體共用問題

  • 分享至 

  • xImage

以下是我的程式碼,問題出在 Note.start = LevelTimePassed; 這一行。
我這段程式想在 settingT 的這個 list 中 add 一個 Note 物件(Note 是我自訂的 class),但是由於 LevelTimePassed 是一個會被更改的變數,因此我加上去的 Note.start 也會變來變去,但我希望可以放上去之後就不要再動,請問有什麼辦法?

Setting Note = setting[0];
Debug.Log(LevelTimePassed);
Note.note = "s";
Note.start = LevelTimePassed;
Note.end = 0;
Note.end = 1;
settingT.Add(Note);
您可以將Note.start設為LevelTimePassed的一個複本,而不是直接將其指定為LevelTimePassed。這樣,即使LevelTimePassed的值變化,Note.start的值也會保持不變。

這裡是一個修改後的程式碼示例:

csharp
Copy code
Setting Note = setting[0];
Debug.Log(LevelTimePassed);
Note.note = "s";
Note.start = new float(LevelTimePassed); // 將LevelTimePassed的複本指派給Note.start
Note.end = 0;
Note.end = 1;
settingT.Add(Note);
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答