c++ class struct同名_C++中的struct和class的区别

初衷

558390a3145566877c00e144af0c7da6.gif e2806cb015c7148a7d00fb02be6cc0dc.gif 也并非突发奇想,一直都有打算做一个公众号,但迟迟没有落地,今天终于得偿所愿了。我建公众号的初衷是想对自己每周所学,做一个总结,方便回顾,正所谓好记性,不如烂笔头嘛!今天是我的第一篇推文,后期我也打算每周一更,通过输出倒逼输入,也是一种促进学习的手段。好了,不扯了,进入今天的主题吧。 022d7531be9252d191add2f4699dc9de.gif

今天我想谈谈c++中的struct和class的区别,学过c的同学应该知道,struct是c中的结构体,它代表着c编程中面向对象的思想。但c语言它是一种面向过程的编程语言。c++是在c的基础上发展而来的,它继承的c的语法特性,同时也新增了很多自己独有的语法特性。面向对象的编程思想就是c++精髓。

在c++中,我们既可以通过struct来创建一个结构体,同时也可通过class来创建一个类。但他们的区别你知道吗?通过查阅和代码验证,可以一句话总结:struct的默认权限是公共权限,而class的默认权限是私有权限。 c10af270eb500e98b7180e7bc11dba6e.png

测试代码:

 1#include
2using namespace std;
3
4//创建一个类
5class C1 6{
7    int  m_A; //默认是私有权限
8};
9
10//创建一个结构体
11struct C212{
13    int m_A;  //默认是公共权限
14};
15
16int main() {
17
18    C1 c1;
19    c1.m_A = 10; //错误,在class中默认权限是私有的,因此类外不可以访问。
20
21    C2 c2;
22    c2.m_A = 10; //正确,访问权限是公共的,因此类外是可以访问的。
23
24    system("pause");
25
26    return 0;
27}

以上就是今天的分享内容了,感兴趣的朋友可以运行代码测试一下。

END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值