猿问

C / C ++ Struct vs Class

C / C ++ Struct vs Class

在完成我的C ++类之后,在我看来,结构/类几乎完全相同,除了一些细微的差别。

我以前从未用C语言编程; 但我确实知道它有结构。在C中是否可以继承其他结构并设置公共/私有的修饰符?

如果你能在常规C中做到这一点,为什么我们需要C ++?是什么让类与结构不同?


波斯汪
浏览 539回答 3
3回答

慕尼黑8549860

其他即默认访问(公共/私有)的差异,没有区别。但是,一些使用C和C ++编写代码的商店将使用“class / struct”来表示哪些可用于C和C ++(struct),哪些只能用于C ++(类)。换句话说,在这种风格中,所有结构必须使用C和C ++。这就是为什么很久以前第一个地方存在差异,当时C ++仍然被称为“C with Classes”。请注意,C联合使用C ++,但不是相反。例如union WorksWithCppOnly{     WorksWithCppOnly():a(0){}     friend class FloatAccessor;     int a;private:     float b;};同样地typedef union friend{     int a;     float b;} class;仅适用于C

LEATH

在C中无法定义成员函数或从彼此派生结构。此外,C ++不仅仅是C +“派生结构”。C中不存在模板,引用,用户定义的命名空间和运算符重载。
随时随地看视频慕课网APP
我要回答