结构体与类的区别
来源:互联网 发布:音频分析软件 编辑:程序博客网 时间:2024/06/08 14:56
C/C++结构体的区别
C中的结构体和C++中结构体的不同之处:在C中的结构体只能自定义数据类型,结构体中不允许有函数,而C++中的结构体可以加入成员函数。
C++中的结构体和类的异同:
一、相同之处:结构体中可以包含函数;也可以定义public、private、protected数据成员;定义了结构体之后,可以用结构体名来创建对象。但C中的结构体不允许有函数;
也就是说在C++当中,结构体中可以有成员变量,可以有成员函数,可以从别的类继承,也可以被别的类继承,可以有虚函数。
二、不同之处:结构体定义中默认情况下的成员是public,而类定义中的默认情况下的成员是private的。类中的非static成员函数有this指针,(而struct中没有是错误的,一直被误导啊,经过测试struct的成员函数一样具有this指针),类的关键字class能作为template模板的关键字 即template class A{}; 而struct不可以。
实际上,C中的结构体只涉及到数据结构,而不涉及到算法,也就是说在C中数据结构和算法是分离的,而到C++中一类或者一个结构体可以包含函数(这个函数在C++我们通常中称为成员函数),C++中的结构体和类体现了数据结构和算法的结合。
0 0
- C# 结构体与类的区别
- 类与结构体的区别
- C#结构体与类的区别
- C#结构体与类的区别
- C# 结构体与类的区别
- 结构体与类的区别
- 结构体与类的区别
- 结构体与类的区别
- 结构体与类的区别
- OC 结构体与类的区别
- C#结构体与类的区别
- C++-类与结构体的区别
- C# 结构体与类的区别
- 类与结构体的区别
- C#结构体+结构体与类的区别
- 类与结构的区别
- 类与结构的区别
- 结构与类的区别
- pat 1011. World Cup Betting (20)
- [前端] 活动有效期计算
- Scheme 4 Javaer-4.Pair、car和cdr
- Android 通过反射随手可得的Application对象
- ora-01445:无法从不带保留关键字的表的连接视图中选择ROWID或采样
- 结构体与类的区别
- ASP.NET 中Post与Get提交方法的不同
- 【JavaWeb】(7)过滤器
- 关于通过UINavigationController push 过去到一个view controller而这个viewvontroller的viewwillappear不执行的问题
- iOS 金额字段加千位分隔符的方法以及银行卡卡号4位一空格的方法
- android自定义style
- 杭电 hdu 1083 Courses (二分匹配 )
- android 中一个工程引用另一个工程
- ConfigurationManager类的config文件读写