【1】C语言中的struct和C++中的struct区别:
- C语言中,struct是用户自定义数据类型,其中只能包含成员变量,不能包含函数。C++中,struct是抽象数据类型,支持定义成员函数。
- C语言中,struct没有访问权限。C++中,struct有三种访问权限。
- C语言中,若没有使用typedef关键字则在定义结构体变量时必须显式写出struct。C++中,可以省略struct关键字。
【2】C++中,struct和class的区别:
- struct默认的权限为public。class默认的权限为private。
- struct类型不能充当函数模板中的参数,而class可以。即允许存在template
,而不存在template 【3】示例代码:验证struct的默认权限为public。
#include
using namespace std; struct A { int age; void setAge(int age) { this->age = age; } int getAge() { return this->age; } }; int main() { A a; a.setAge(10); cout << a.getAge(); return 0; }
还没有评论,来说两句吧...