所以我現在有一個簡單的結構(鏈表),我將使用在一個HashMap:創建指針動態分配的數組到結構C++
struct Node {
std::string key, value;
Node* head;
}
我目前試圖動態地分配與指針的數組到每個結構。這就是我現在所擁有的......
Node* nodes = new Node[100]
我明白這個分配到內存中100個節點(我將不得不刪除以後)的陣列;然而,在反覆嘗試橫向這些節點(這是我的實現作爲一個鏈表)...
for (int x = 0; x < 100; x++) {
Node current = nodes[x]; // Problem is I wanted an array to node pointers. This is not a pointer.
while (current != nullptr) { // this isn't even legal since current is not a pointer.
// DO STUFF HERE
current = current.next; // This is not a pointer access to a method. I'm looking to access next with current->next;
}
}
希望我是很清晰。有人可以如何分配一個指向結構的動態數組指針?到目前爲止,我可以動態地分配一個結構數組,而不是指向結構體的指針數組。
基本上,通過爲您的節點提供連續的內存,您炸燬了整個鏈接列表的想法。由於您擁有空間信息,因此不需要下一個節點(即,index) – 101010
你似乎不確定你是想要一個鏈表還是一個動態數組。 – PaulMcKenzie
這個想法是我正在實現一個hashmap,因此需要一個動態分配的LinkedLists數組。 –