簡體   English   中英

我可以將malloc與引用一起使用而不是指針嗎?

[英]Can I use malloc with references instead of pointers?

static Player players[32];

Player* Player_constructor() {
    Player* player = malloc(sizeof(Player));
    // Do some initializations
    return player;
}
...
...
...
players[0] = Player_constructor();

問題是players[0]的類型為PlayerPlayer_constructor的類型為Player*

我該如何克服這個問題? 使用參考會有所幫助嗎?

它應該是

static Player *players[32];

您可以創建一個指針數組而不是結構體:

static Player * players[32];

您在這里不需要動態分配:您的Player結構數組可以直接使用,而無需malloc 處理初始化的一種簡單方法是按如下方式重寫Player_constructor

void Player_constructor(Player* player) {
    // Do some initializations
}
...
Player_constructor(&players[0]);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM