如何在C中创建一个数组来保存2个相似类型的Structs?

Ari*_*Ari 1 c inheritance struct

我在C中模拟继承,但不确定确切的方法.我创建了两个结构,Employee和Director,其中Director应该从Employee"继承".如何创建一个能够容纳常规员工和董事的阵列?这不起作用:

Employee workers[3]
Run Code Online (Sandbox Code Playgroud)

下面是我的Director结构代码:

typedef struct {
    Employee employee;   
    int bonus;
} Director;
Run Code Online (Sandbox Code Playgroud)

Ama*_*dan 8

制作一个union可以包含董事或员工的标志,以及一个标志,说明union您正在使用的部分.然后声明该union类型的数组.