コンパイラの警告 (レベル 1) C4286
'type1' : 行番号の基底クラス ('type2') によってキャッチされます
指定された例外の種類は、前にあるハンドラーによって処理されます。 2 番目の catch の型は、最初の catch の型から派生します。 基底クラスの例外は、派生クラスの例外をキャッチします。
例
//C4286.cpp
// compile with: /W1
#include <eh.h>
class C {};
class D : public C {};
int main()
{
try
{
throw "ooops!";
}
catch( C ) {}
catch( D ) {} // warning C4286, D is derived from C
}