幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2943|回复: 8

[通用编程] 求本介绍C/C++异常处理机制的书

[复制链接]

23

主题

218

帖子

2470

积分

⑥精研

积分
2470
发表于 2007-8-17 23:44:33 | 显示全部楼层 |阅读模式
RT

最好能介绍实现机理,付汇编实现代码介绍的更好,中英文都可以[s:7]

之前找了本Robert Schmidt的《C与C++中的异常处理》的中文版,可惜翻译实在是太垃圾,根本就看不懂[s:8]
ONScripter for PSP/Windows中文版 http://blog.163.com/john_he_
回复

使用道具 举报

18

主题

428

帖子

5260

积分

⑦老手

在美工荒中挣扎的全能

积分
5260
QQ
发表于 2007-8-18 08:10:40 | 显示全部楼层
C的异常么- -就是所谓jmp吧- -
C++我觉得实现机理和C的应该一样,只是个人的主观臆断嗯- -
回复 支持 反对

使用道具 举报

23

主题

218

帖子

2470

积分

⑥精研

积分
2470
 楼主| 发表于 2007-8-18 12:33:30 | 显示全部楼层
所谓C异常应该就是setjmp和longjmp。
觉得C++的应该有点不同吧,毕竟throw的时候还要析构对象……
也是主观臆断……
ONScripter for PSP/Windows中文版 http://blog.163.com/john_he_
回复 支持 反对

使用道具 举报

19

主题

842

帖子

1万

积分

⑧专业

絕望青年,一起增高吧

积分
13676
发表于 2007-8-18 14:26:59 | 显示全部楼层
其實繼承式的Error物件加throw已經十分足夠。。

為著彼岸,便要與之妥協 但為著彼岸,更不能與之妥協

回复 支持 反对

使用道具 举报

23

主题

218

帖子

2470

积分

⑥精研

积分
2470
 楼主| 发表于 2007-8-18 14:46:46 | 显示全部楼层
我是想了解C++异常处理具体的开销在哪里,优缺点是什么……

其实我个人极度不喜欢用抛出异常的方法,总觉得这样就不知道程序到底做了什么,不过有时候要用到些会抛异常的库没办法。一般我是用返回Error Code的方法判断错误的 [s:5]
ONScripter for PSP/Windows中文版 http://blog.163.com/john_he_
回复 支持 反对

使用道具 举报

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
发表于 2007-8-18 19:52:14 | 显示全部楼层
或许你可以尝试契约式编程,可看看《契约式设计的理解及其在C/C++中的应用》
其实,我只是知道在c++中也可以用契约,但实际上我只是在D中用过。
在D中契约可以用来判断程序的错误,而且只是在编译时进行判断,对编译后的exe没有影响。
え~え~お!!!
回复 支持 反对

使用道具 举报

23

主题

218

帖子

2470

积分

⑥精研

积分
2470
 楼主| 发表于 2007-8-19 12:51:43 | 显示全部楼层
契约式编程,是不是使用assert?

assert不能应对一些运行时错误吧,因为我想写的是脚本解释器,要处理一些诸如语法错误、非法操作和内存分配失败的问题,所以还是想要能从错误中恢复的机制……
ONScripter for PSP/Windows中文版 http://blog.163.com/john_he_
回复 支持 反对

使用道具 举报

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
发表于 2007-8-20 10:32:07 | 显示全部楼层
原来是这个目的。自己设计一门解释语言啊...
え~え~お!!!
回复 支持 反对

使用道具 举报

23

主题

218

帖子

2470

积分

⑥精研

积分
2470
 楼主| 发表于 2007-8-20 19:50:40 | 显示全部楼层
[s:5] 不是自己设计,是想要扩展Lua的多线程功能和做个易用的Wrapper……
如果是自己实现,我是不会考虑用抛错误的方式的
ONScripter for PSP/Windows中文版 http://blog.163.com/john_he_
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-4-30 03:18 , Processed in 0.032501 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表