先週は忙しかったのでお休みしました。
第12回投稿は
例外の投げ方。
例外とは、プログラム上のエラー(0で割るとか)が起きても
try~catch文を書いておけば
プログラム内で対処できる
というもの。
javaとかだと
void kansu (int hikisu) throws Exception{
...
}
みたいに書くのだけど
C#やC++はそうじゃないことを
最近はじめて知った。
C++の例外throw方法はコチラ。
//----------------------------------------------
char hex(int x){//16進数1桁
if(x<0 || x>15) throw gcnew System::OverflowException();
if(x<10) return (char)('0'+x);
return (char)('a'+(x-10));
}
int main(array<System::String ^> ^args){
try{
for(int i=8;i<20;i++)
putchar(hex(i));
}catch(...){
putchar('?');
}
putchar('\n');
return 0;
} //出力 89abcdef?
//----------------------------------------------