C # массив структуры внутри структуры - PullRequest
0 голосов
/ 03 января 2012

Исходный вопрос: массив C # в структуре

Буферы фиксированного размера работают для некоторых внутренних типов данных (bool, byte, short, int, ..), но когда мне нужно было определить массив struct внутри структуры, я до сих пор не был достаточно умен.

Далее предположим, что recordLayout - это структура, содержащая 18 полей, в том числе некоторые массивы простых типов, которые были решены с помощью небезопасных буферов и буферов фиксированного размера. Далее мне нужно заполнить следующую структуру (содержащую массив struct) из двоичного файла.

[StructLayout(LayoutKind.Sequential,Pack=1)]
unsafe struct dataBlock {               // 2048 bytes
    fixed ushort junk[5];
    fixed recordLayout records[22];     // doesnt work of course, data type constrained
    fixed byte filler[14];
}

Я пытался создать явную структуру LayoutKind, которая отображает фиксированный байтовый массив в массив записей, но сразу же наталкивается на то, что этого нельзя делать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...