1
2
1不,它们不一样。您用两个不同的名称声明了两个不同结构。编译器会将它们视为完全不同。这类似于说
这两个是一样的吗?它们有相同的成员这一事实不足以让编译器认为它们是相同的。但是,在我的例子中,由于他们确实共享相同的成员,您可以通过将一个成员的地址明确地转换为另一个成员来逃脱惩罚:
和
2如果函数调用Binary_Stream_Read_Write_Intf或Binary_Sream_Read_Intf,则为否。编译器只接受该类或从中继承的任何类,并且两个类都不是另一个类的后代。(不过,你可以说他们是兄弟姐妹。)然而,如果函数调用的是Binary_Stream_Write_Intf或Binary_Sream_Read_Intf,那么你可以,因为这是对他们共同的父级的调用。和往常一样,如果没有共同的继承,那么你就无法替代。如果函数调用一个公共的超类,是的,那么任何一个都可以。 3它们都继承自Binary_Stream_Read_Intf,所以是的。 |
2
0
|