编译器警告(等级 1)C4461
“type”:此类具有终结器“finalizer”,但没有析构函数“dtor”
类型中存在终结器意味着存在要删除的资源。 除非从类型的析构函数显式调用终结器,否则公共语言运行时确定在对象超出范围后何时运行终结器。
如果在类型中定义析构函数并从析构函数显式调用终结器,则可以确定性地运行终结器。
有关详细信息,请参阅析构函数和终结器。
示例
下面的示例生成 C4461。
// C4461.cpp
// compile with: /W1 /clr /c
ref class A {
protected:
!A() {} // C4461
};
// OK
ref struct B {
~B() {
B::!B();
}
!B() {}
};