Как получить смещение поля?
От: Аноним  
Дата: 16.04.14 10:12
Оценка:
Привет всем!Уже второй день бьюсь без результативно над одной простой задачей:

Допустим у нас есть такая выдуманная структура struct1:


       [StructLayout(LayoutKind.Sequential, Pack = 1)]
        struct struct1
        {
            public int v1;
            public int v2;
            public struct2 s1;
            public struct3 s2;
            public double v3;
        }
        [StructLayout(LayoutKind.Sequential, Pack = 1)]
        struct struct2
        {
            public bool v1;
            public int v2;
        }
        [StructLayout(LayoutKind.Sequential, Pack = 1)]
        struct struct3
        {
            public long v1;
            public double v2;
            public Struct4 s1;
        }
        [StructLayout(LayoutKind.Sequential, Pack = 1)]
        struct Struct4
        {
            public long v1;
            public int value;
        }


Как можно узнать по какому смещению от начала структуры находится поле myStruct.s2.s1.value ??? Есть ли какие нибудь стандартные решения?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.