首页
社区
课程
招聘
struct与class
发表于: 2006-12-23 15:17 5027

struct与class

2006-12-23 15:17
5027
学了2年的C++,还搞不清楚这两个除了private 上用区别外,其它优点.搞不清楚private 的出现给程序员带来了什么好处.

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (11)
雪    币: 380
活跃值: (101)
能力值: ( LV13,RANK:370 )
在线值:
发帖
回帖
粉丝
2
我学C++不久,按软件工程上说,面向对象的封装让
程序的维护变得更轻松,数据的使用更安全,
private就是一种封装技术
我也是新手
2006-12-23 15:22
0
雪    币: 258
活跃值: (230)
能力值: ( LV12,RANK:770 )
在线值:
发帖
回帖
粉丝
3
偶认为面向对象的语言C++或者是Objcet Pascl等,不论java,.net托管代码.
它们的汇编代码层表现的对象相当丰富,艺术化了....
其中的动态联编(多态联编)偶认为是精髓,其二是对象封装.

面向对象这一动态联编特性被广泛用到组件接口或者是服务接口上....

服务接口中的驱动服务例程接口调用方法也类似这种动态联编方式.

一组一组对象的指针接口....
一个一个的动态联编容器...
组成这么美好富有艺术的程序多态..
不当之处,多谢指教!
2006-12-23 20:24
0
雪    币: 235
活跃值: (100)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
struct和class除了默认权限区别之外,其它都是一样的。。。
2006-12-23 20:53
0
雪    币: 101
活跃值: (12)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
5
struct是c遗留下来的东西.
跟class唯一的区别就是默认权限
一般来说, 逻辑上应该是个结构体就用struct定义(知主要是要访问数据成员)
是"类", 就用class定义.(主要访问成员方法)
2006-12-24 00:22
0
雪    币: 161
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
PFC
6
看了这么多还是不知道到底用类给程序带来了什么好处
2006-12-24 08:38
0
雪    币: 226
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
struct 是class的特例。
2006-12-24 20:28
0
雪    币: 250
活跃值: (30)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
C++继承并扩充了C里面的struct,使之与C++新定义的class一致

区别大概只有默认使用时的public和private之分
2006-12-24 21:52
0
雪    币: 415
活跃值: (34)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
9
我道是觉得对某些小程序而言,用类是多余的.使编程复杂化了
2006-12-24 22:54
0
雪    币: 297
活跃值: (10)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
10
如果楼主你试着去做一个大点的项目,我相信你会需要一种方法或者机制来解决你所遇到的一些问题的。

用class或者struct可以更好地模拟现实,而且对数据的保护效果很好。
不要再以C的思维去想问题。
2006-12-25 09:21
0
雪    币: 1852
活跃值: (504)
能力值: (RANK:1010 )
在线值:
发帖
回帖
粉丝
11
最初由 PFC 发布
学了2年的C++,还搞不清楚这两个除了private 上用区别外,其它优点.搞不清楚private 的出现给程序员带来了什么好处.


概念性的问题看C++方面的书就可以了
至于切身的体会还得要多做软件才行

从我自己的经验来说,很多时候我都会把private型改成public,因为写起来方便,从实现的角度来说,对于每一个变量可以少写一个对应的成员函数。不过这些是在安全性不高的情况下进行的,或者软件比较小。
不过在做正规项目的时候,建议还是该private的就private。
2006-12-25 09:24
0
雪    币: 258
活跃值: (230)
能力值: ( LV12,RANK:770 )
在线值:
发帖
回帖
粉丝
12
C++ 是Class经典啊.

感觉C++是特定CPU平台的Class

再此基础的Java和.Net是跨平台的Class

C++是曾经的辉煌...

C++带来了程序动态的联编,执行的多态,虚拟的接口,数据的封装继承,C++是Java,Net的前辈

2006-12-25 09:27
0
游客
登录 | 注册 方可回帖
返回
//