1、C和C++ struct的区别
C是一种过程化的语言,struct只是作为一种复杂数据类型定义,struct中只能定义成员变量,不能定义成员函数(在纯粹的C语言中,struct不能定义成员函数,只能定义变量)。
C++中struct还有构造函数和成员函数,其实它还拥有class的其他特性,例如继承、虚函数等。它只和class有略微的区别,其他功能相同。
2、C++中struct和class的区别
(1)、class中的成员默认是private,而struct的成员默认为public。
(2)、class默认的继承方式是private,而struct的默认继承方式是public。
(3)、class还可以用于表示模板类型,struct则不行。在用模版的时候只能写template <class Type>或template<typename Type>不能写template <struct Type>。