|
|
|
Динамически выделяемая под объединения
|
|||
|---|---|---|---|
|
#18+
Задача у меня вот какая, нужно создать объединения подобного рода union Vizov { uchar Bytes[87]; struct { uchar Id; ushort Dl; unsigned int IndZ; unsigned int IDentViz; uchar mm[76]; }; }; Но при этом длина массива Bytes и mm будет заранее неизвестна, то есть под массив Bytes память должна выделяться динамически. Как это реализовать? Если использовать вариант union Vizov { uchar *Bytes; struct { uchar *Id; ushort *Dl; unsigned int *IndZ; unsigned int *IDentViz; uchar *[76]; }; }; и выделять память так Vizov V; V.Bytes=new uchar[87]; То при этом значения Id, Dl не получить. Объединение это я использую для чтения блока данных из файла. Заранее спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2005, 12:21 |
|
||
|
Динамически выделяемая под объединения
|
|||
|---|---|---|---|
|
#18+
Как одним словом выделять память под объединения. И должны ли при этом все члены объединения быть указателями? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2005, 12:40 |
|
||
|
Динамически выделяемая под объединения
|
|||
|---|---|---|---|
|
#18+
Не должны. Память выделяется как обычно, как для любых других стуктур. Объектов переменной длины в С++ нет, поэтому ты сам должен выделять память и совмещать ее со структурой или объединением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2005, 15:58 |
|
||
|
Динамически выделяемая под объединения
|
|||
|---|---|---|---|
|
#18+
Olga2004 union Vizov { uchar Bytes[87]; struct { uchar Id; ushort Dl; unsigned int IndZ; unsigned int IDentViz; uchar mm[76]; }; }; Но при этом длина массива Bytes и mm будет заранее неизвестна, то есть под массив Bytes память должна выделяться динамически. Как это реализовать? Очень просто: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2005, 18:48 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33379975&tid=2032451]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
73ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 373ms |

| 0 / 0 |
