0
現在幾個小時我一直在努力研究如何將動態內存分配給某個playerid,當他們加入服務器,並在他們離開時銷燬它。分配動態內存給玩家ID
我試過很多東西,我試圖使指針數組...這會允許我使用指針和數組的位置與玩家ID訪問信息:
int *pInfo[MAX_PLAYERS]; // Global
//Function Local
CPlayers p;
pInfo[playerid] = p;
哪它不能工作,它告訴我它不能將類初始化轉換爲內存指針。
我想同樣的事情,這條線來代替:
std::unique_ptr<CPlayers> pInfo[playerid];
然而它需要一個常量表達式,其中playerid的是,這意味着我不能這樣做,除非我知道玩家ID是什麼,直接輸入......這是不可能的,因爲直到他們的客戶端嘗試連接時我纔會知道。
有沒有人有一個解決方案,可以讓我動態地創建內存,並讓這個內存可以通過playerid訪問。或者其他一些時尚,我無限期地在遊戲中使用客戶信息。
因爲我已經用完了想法......我在網上找不到任何東西。我也是新手,所以可能會有我看過的功能。
謝謝。
謝謝,我跑你的測試代碼。它完美地運行,像夢一樣分配和分配內存:D。謝謝你的回覆,你一直在幫助很大。現在我可以回到學習了:)。 – user1591117 2014-09-04 01:39:30