可能重复:
如何在 C 中模拟 OO 风格的多态性?
我正在尝试使用联合在 C 中创建多态性。我执行以下操作。
typedef struct{
...
...
} A;
typedef struct{
...
...
} B;
typedef union{
A a;
B b;
}C;
我的问题是:我怎样才能有一个采用 C 类型但也允许 A 和 B 的方法。我希望以下工作:
如果我定义一个函数:
myMethod(C){
...
}
然后,我希望这个工作:
main(){
A myA;
myMethod(myA);
}
它没有。有什么建议么?