结构是公共的,而课程可以是公共的和私人的

时间:2013-07-26 04:56:16

标签: c++ class struct

我在求职面试中被问到一个问题:

  

结构之间有什么区别?”

我简单回答:

  

结构的成员只能是公开的,而的成员可以声明为公共或私有。”

但现在我对我的回答感到困惑。我一直在互联网上查看strcut和class之间的差异,但在任何地方都看不到这种差异。我对雇主的回答不正确吗?

如果是,除了这个之外,struct和class之间究竟有什么区别:

  

默认情况下,类的成员是私有的,而结构的成员默认是公共的。

1 个答案:

答案 0 :(得分:2)

在C ++中,它是最后一个正确但不完整的语句。默认情况下,类的成员对于类是私有的,并且对于结构是公共的。

缺少的是同样适用于它们的基类:默认情况下,继承在类和公共结构中是私有的。结构和类在C ++中是等效的,您可以使用任一关键字表达完全相同的类型。

所以看起来你的回答是错误的。