首页 > 代码库 > C++中class与struct的区别(struct的类型名同时可以作为变量名)
C++中class与struct的区别(struct的类型名同时可以作为变量名)
通常我们知道的区别:
(一)默认继承权限。如果不明确指定,来自class的继承按照private继承处理,来自struct的继承按照public继承处理;
(二)成员的默认访问权限。class的成员默认是private权限,struct默认是public权限。
除了这两点,class和struct基本就是一个东西。语法上没有任何其它区别。
昨天发现一个不知道算不算是区别的东西:
struct的类型名同时可以作为变量名,显然class是不可以的,也可以理解,因为class各类型变量定义时直接是类名,而struct的是struct+结构体名来定义变量的。
示例如下:
#include<iostream>using namespace std;struct tt{int a;int b;};int main(){ struct tt tt; tt.a=13; tt.b=43; cout<<tt.b<<endl; return 0;}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。