免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: mmmixx
打印 上一主题 下一主题

脱裤子放屁的代码…… [复制链接]

论坛徽章:
0
121 [报告]
发表于 2007-08-10 21:43 |只看该作者
第一个问题,看来楼主还没有在指针未赋空方面吃过苦头,没关系!

第二个问题,Assert只是用于调试版本,在正式版本发布时会关掉的.如果要检测和处理这里可能发生的错误,肯定要用goto或者别的什么处理方式.

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
122 [报告]
发表于 2007-08-10 23:17 |只看该作者
不是内存大到没边了.
不检查malloc,new的返回值,肯定不是好习惯,

用了一个指针,分配内存没成功,此时用另外一种手段处理该问题了.难道释放的时候我不应该检查一下吗?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
123 [报告]
发表于 2007-08-10 23:21 |只看该作者
原帖由 james_h 于 2007-8-9 22:27 发表
楼主没有写过并发多线程应用。

鉴定完毕。


有一定道理.

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
124 [报告]
发表于 2007-08-10 23:23 |只看该作者
原帖由 isnowran 于 2007-8-9 21:05 发表
先把明显的屁去掉

char* c = NULL;
free( c );  // ok, posix要求free的对象若是NULL,那么不做任何动作.


你的程序移植性一定很差.

论坛徽章:
0
125 [报告]
发表于 2007-08-10 23:28 |只看该作者
原帖由 mq110 于 2007-8-10 23:17 发表
不是内存大到没边了.
不检查malloc,new的返回值,肯定不是好习惯,

用了一个指针,分配内存没成功,此时用另外一种手段处理该问题了.难道释放的时候我不应该检查一下吗?

似乎没有人说不检查 malloc 的返回值,而 new 如果失败,是抛出异常的

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
126 [报告]
发表于 2007-08-10 23:34 |只看该作者
原帖由 antigloss 于 2007-8-10 23:28 发表

似乎没有人说不检查 malloc 的返回值,而 new 如果失败,是抛出异常的


不写C++,忘光了,不好意思.

论坛徽章:
0
127 [报告]
发表于 2007-08-11 00:25 |只看该作者
稳定性,可维护性,移植性,比较重要

论坛徽章:
0
128 [报告]
发表于 2007-08-11 13:23 |只看该作者
c/c++没有学懂就以专家口气说话,楼主建议再仔细想想

论坛徽章:
0
129 [报告]
发表于 2007-08-11 13:25 |只看该作者
同意129#

[ 本帖最后由 cnshibo 于 2007-8-11 13:31 编辑 ]

论坛徽章:
0
130 [报告]
发表于 2007-08-11 16:37 |只看该作者
原帖由 飞灰橙 于 2007-8-9 22:21 发表
真是太奇怪了,对付这么个问题,
为什么不用智能指针?很好的自动脱裤机耶!


你也是高明人呀!不过说明功底不够,没有真的弄清一些机制,尤其在复杂的多线程环境下,多个cpu同时执行的情形,代码应该如何处理,自动指针的原理是什么?如果有引用的地方指针不设成null,会怎么样?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP