Можете ли вы иметь динамический массив внутри связанного списка и его распределение памяти

В systemverilog я могу определить структуру, чтобы я мог создать свой собственный связанный список
Например,

struct node{
int a;
bit my_assoc_array[string];
node* nextNode;
};

Если я делаю это, как распределяется память для этой структуры? Если это 32-битная система, то для int a будет выделено 4 байта. Какой объем памяти выделяется для динамического ассоциативного массива и где он начинается? Например, как правило, массив char [10] будет иметь свои начальные указатели в месте расположения заголовка.

       __     ___ ___ ___ ___ ___ ___ ___ ___ ___ ___
array| -|-->|...|...|...|...|...|...|...|...|...|...|
--     --- --- --- --- --- --- --- --- --- ---
0   1   2   3   4   5   6   7   8   9

Спасибо за вашу помощь.

1

Решение

SystemVerilog не позволяет вам увидеть внутреннее представление структуры или любого другого типа данных в этом отношении. Самое близкое к этому — предоставление дескрипторов объектам класса. Но он предоставляет ряд встроенных типов данных, которые уменьшают потребность в таких знаниях. Например, у него есть очередь, которая дает вам функциональность связанного списка.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]