- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
type int = 1;
function main() {
print("try/catch");
let t = 1;
try {
throw 1;
} catch (v: int) {
print("Hello ", v);
v = t;
}
assert(v == t);
print("done.");
}
ASD_77 14.09.2021 20:56 # 0
ASD_77 14.09.2021 20:56 # 0
ISO 14.09.2021 20:58 # +5
ASD_77 14.09.2021 21:09 # +1
guest6 14.09.2021 21:10 # +5
ASD_77 14.09.2021 21:14 # 0
3_dar 14.09.2021 21:15 # +2
guest6 14.09.2021 21:20 # +2
Soul_re@ver 14.09.2021 21:36 # +4
Vindicar 15.09.2021 15:29 # +1
3.14159265 14.09.2021 22:20 # +2
guest6 14.09.2021 22:23 # +2
3_dar 14.09.2021 21:16 # 0
ASD_77 14.09.2021 21:19 # 0
3_dar 14.09.2021 21:21 # 0
ASD_77 14.09.2021 21:22 # 0
guest6 14.09.2021 21:24 # 0
3_dar 14.09.2021 21:24 # 0
То есть чтобы сделать multiple catch, нужно либо вложенные try..catch, либо один с портянкой instanceof?
guest6 14.09.2021 21:26 # +1
ASD_77 14.09.2021 21:17 # +1
guest6 14.09.2021 21:28 # +1
bormand 14.09.2021 23:29 # 0
guest6 14.09.2021 23:32 # +1
А как там стек выглядит?
bormand 14.09.2021 23:33 # 0
Может какие-то ещё нюансы есть, конечно. Я никогда не изучала этот момент.
ASD_77 15.09.2021 02:18 # +1
In Windows XP, if _alloca is called inside a try/catch block, you must call _resetstkoflw in the catch block.
ASD_77 15.09.2021 02:23 # 0
ASD_77 15.09.2021 02:52 # 0
guest6 15.09.2021 03:00 # 0
guest6 15.09.2021 21:19 # 0
guest6 15.09.2021 21:28 # 0
guest6 15.09.2021 23:16 # +1
JloJle4Ka 20.09.2021 12:59 # 0