我在求职面试中被问到一个问题:
“结构与类之间有什么区别?”
我简单回答:
“结构的成员只能是公开的,而类的成员可以声明为公共或私有。”
但现在我对我的回答感到困惑。我一直在互联网上查看strcut和class之间的差异,但在任何地方都看不到这种差异。我对雇主的回答不正确吗?
如果是,除了这个之外,struct和class之间究竟有什么区别:
默认情况下,类的成员是私有的,而结构的成员默认是公共的。
答案 0 :(得分:2)
在C ++中,它是最后一个正确但不完整的语句。默认情况下,类的成员对于类是私有的,并且对于结构是公共的。
缺少的是同样适用于它们的基类:默认情况下,继承在类和公共结构中是私有的。结构和类在C ++中是等效的,您可以使用任一关键字表达完全相同的类型。
所以看起来你的回答是错误的。