什么法律代码可以触发C4523"指定多个析构函数"的Visual C++警告?

sha*_*oth 6 c++ compiler-construction destructor compiler-warnings visual-c++

根据MSDN,Visual C++可以发出C4523警告 'class':指定多个析构函数.这种情况怎么可能呢?

我尝试了以下方法:

class Class {
    ~Class();
    ~Class(int);
};
Run Code Online (Sandbox Code Playgroud)

产生析构函数必须有'void'参数列表错误和C4523警告以及以下内容

class Class {
    ~Class();
    ~Class();
};
Run Code Online (Sandbox Code Playgroud)

它产生成员函数已经定义或声明的错误和以下内容

class Class {
    int ~Class();
    ~Class();
};
Run Code Online (Sandbox Code Playgroud)

产生析构函数不能有返回类型错误.

那我怎么有C4523警告而且没有错误?

Ben*_*igt 2

这是多个析构函数是错误而不是警告的另一个示例:

class C
{
    ~C();
    ~C() volatile;
};
Run Code Online (Sandbox Code Playgroud)