以下声明之间的区别(在C ++ / CLI中):
public interface class IC {};
public interface struct IS {};
类似情况:
public enum class EC {};
public enum struct ES {};
答案 0 :(得分:10)
它们完全相同。
有关详细信息,请参阅备注:
下的MSDN's interface class参考interface struct相当于接口类。
我相信Microsoft决定允许这两个选项只是为了与ref class
/ ref struct
和value class
/ value struct
保持一致。但是,由于接口没有私有成员,对于接口,这两个语句完全相同。
答案 1 :(得分:1)
没有区别。它们是等价的。
请注意,除了'真正的'C ++之外,结构和类之间几乎没有区别,除了成员的默认可访问性。因此,在C ++ / CLI的并行领域,无论如何,可访问性规则都是不同的,它们并不完全是疯狂的。