请教C++的 union struct 应该如何理解

请问C++的 union struct 应该怎么理解?
C/C++ code
struct _zend_class_entry {
.....
    union {
        struct {
            const char *filename;
            zend_uint line_start;
            zend_uint line_end;
            const char *doc_comment;
            zend_uint doc_comment_len;
        } user;
        struct {
            const struct _zend_function_entry *builtin_functions;
            struct _zend_module_entry *module;
        } internal;
    } info;



请问这个结构应该怎么理解和翻译成delphi的

------解决方案--------------------
case