1
ipwx 2018-03-09 15:41:06 +08:00
longjmp?
|
2
innoink 2018-03-09 15:48:41 +08:00 via Android
这和图灵机有什么关系,哪个语言不是图灵机?
|
3
dandycheung 2018-03-09 15:52:21 +08:00 via Android
这么复杂的专业领域知识,为什么不先去读读相关著作再来提问呢?
|
4
htfy96 2018-03-09 15:55:15 +08:00 1
没有规定实现,不过可以看看 http://itanium-cxx-abi.github.io/cxx-abi/abi-eh.html#cxx-abi 的 2.4/2.5
|
5
NagisaFurukawa 2018-03-09 15:59:32 +08:00
SEH 了解一下
|
6
ysc3839 2018-03-09 16:29:13 +08:00
编译后逆向看看就知道了。不同编译器可能有不同实现的。
|
7
gnaggnoyil 2018-03-09 17:42:22 +08:00 2
C++的代码和具体的机器指令又没有必然的联系."高层抽象"了解一下.首先 C 和 C++就不保证一定是 1.编译的 2.编译目标是机器指令.其次 C++的 implementation 完全可以自己插入需要的代码来获得符合要求的实现:RAII 不就是这样做的吗.POSIX 和 MINGW 的 GCC 以及 POSIX 下的 Clang 有两种异常的实现:SJLJ 和 Dwarf.Windows 下的 MSVC 和 Clang-cl 对异常的实现则是 Windows 的 SEH.不同异常的实现属于这个实现的 C++ ABI 的一部分,所以即使是同一个平台下的同一个 implementation,如果其对异常处理的实现不同的话一般情况下也是不能保证其 ABI 是互相兼容的.特别是 SJLJ,Dwarf 和 SEH 这三者两两之间 ABI 互不兼容.
|
8
julyclyde 2018-03-10 11:48:34 +08:00
要抱着孤立和分层的观点看问题
并不是每两个事务之间都有直接关系 |
9
tailf OP 学习了
|