except5.c
来自「俄罗斯高人Mamaich的Pocket gcc编译器(运行在PocketPC上)」· C语言 代码 · 共 41 行
C
41 行
// Build don't link: // Special g++ Options: -fexceptions// GROUPS passed exceptions// except file// Message-Id: <199311101607.AA11803@hsi86.hsi.com>// From: Grigory Tsipenyuk <grigory@hsi.com>// Subject: exception's bug?// Date: Wed, 10 Nov 1993 11:07:12 -0500#include <iostream>class X { int *a; int sz;public: class range { }; // exception class X(int s) { a=new int[sz=s]; } int& operator[](int i);};int& X::operator[](int i){ if (i < 0 || i >= sz) { throw range(); } return a[i];}intmain(){ X c(10); try { for (int i = 0; i < 12; i++) c[i] = 1; } catch (X::range) { std::cerr << "invalid range\n"; } return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?