不应抛出 nullptr
7.26 ID_throwNullptr
nullptr 可被所有接受指针的 catch 子句捕获,使异常处理失去针对性。
示例:
void foo() {
throw nullptr; // Non-compliant
}
void bar() {
try {
foo();
} catch (int*) { // Which handler?
....
} catch (char*) {
....
}
}
相关
参考
MISRA C++ 2008 15-0-2