A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 DWC_5101 于 2013-3-30 12:21 编辑

Model里面就是一些公共的属性,用结构体来实现,是否更有效率些? 各位大侠怎么看

2 个回复

倒序浏览
你知道的结构和类的执行效率是差不多的,有一些类完全可以用结构来替代,但是你要知道,结构体有一个很大的缺陷,就是它不能够实现多态,不能够被继承的,如果以后想对这个项目进行扩展,而恰巧Model又是用结构写的,那么将会很麻烦。下面是我搜的资料,你可以参考以下,希望对你有帮助

结构和类的区别,在网上随便搜索一下,到处都是。
其中的一点是:传递、赋值结构的对象将复制整个结构,而只类复制引用(指针)。
因此,3层结构中一般不用结构,理由是
1。通常结构表示比较简单、比较小的数据类型,而Model类作为数据库表的映射,通常是有些复杂的;
2。最重要的一点,由于上层(业务层,甚至界面层)会频繁在方法中传递结构对象,又因为结构是按值复制(复制整个结构,而不是指针),频繁的堆栈复制将严重影响效率。而用类就不会,因为他传递的是对象引用。

评分

参与人数 1黑马币 +10 收起 理由
DWC_5101 + 10 很给力!

查看全部评分

回复 使用道具 举报
管章鹏 发表于 2013-3-29 15:03
你知道的结构和类的执行效率是差不多的,有一些类完全可以用结构来替代,但是你要知道,结构体有一个很大的 ...

呵呵,谢谢,你的鼓励将是我不断进步的动力!谢谢拉哈
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马