型に関係なくcatchする

http://www.geocities.jp/ky_webid/cpp/language/025.html

エラーの種類に関わらずエラー処理を行いたい場合もあると思います。例えばエラーが出たらexitする処理を書きたいとして

#include <iostream>
using namespace std;

int main () {
    try {
        // 何かしらのエラーが発生する
    }
    catch ( const char* ) {
        exit(1);
    }
    catch ( int ) {
        exit(1);
    }
    
    return 0;
}

上記のようにいちいち型を指定してわざわざ同じ処理を書くのは苦痛なので、型に関係なくとにかくcatchで全部例外を扱いたい場合は下記のように書くことができる。

#include <iostream>
using namespace std;

int main () {
    try {
        // 何かしらのエラーが発生する
    }
    catch ( ... ) {
        exit(1);
    }
    
    return 0;
}

どこかで見たことがあるような書き方ですが、catchの引数部分に「...」と書けば型に関係なく例外のキャッチを行えます。