gpt4 book ai didi

c++ - 什么合法代码可以触发 C4523 "multiple destructors specified"Visual C++ 警告?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:35:44 26 4
gpt4 key购买 nike

根据 MSDN,Visual C++ 可以发出 C4523 warning 'class' : 指定了多个析构函数。怎么可能出现这种情况?

我尝试了以下方法:

class Class {
~Class();
~Class(int);
};

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

class Class {
~Class();
~Class();
};

这会产生成员函数已经定义或声明错误以及以下内容

class Class {
int ~Class();
~Class();
};

这会产生析构函数不能有返回类型错误。

那么我如何有 C4523 警告但没有错误呢?

最佳答案

以下会导致警告 C4523,但它之前也有错误

struct Foo 
{
~Foo() {}
~Foo() const {}
};


error C2583: 'Foo::~Foo' : 'const' 'this' pointer is illegal for constructors/destructors
warning C4523: 'Foo' : multiple destructors specified

关于c++ - 什么合法代码可以触发 C4523 "multiple destructors specified"Visual C++ 警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7918500/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com