編譯器錯誤 C3162
'type' :具有解構函式的參考型別不能當做靜態數據成員 'member' 的類型使用
Common Language Runtime 在類別也包含靜態成員函式時,無法知道何時執行使用者定義的解構函式。
除非明確刪除對象,否則永遠不會執行解構函式。
如需詳細資訊,請參閱:
範例
下列範例會產生 C3162。
// C3162.cpp
// compile with: /clr /c
ref struct A {
~A() { System::Console::WriteLine("in destructor"); }
static A i; // C3162
static A^ a = gcnew A; // OK
};
int main() {
A ^ a = gcnew A;
delete a;
}