gpt4 book ai didi

c++ - 虚方法但非虚析构函数

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

我在 Eclipse CDT 中收到错误“类‘Polygon’具有虚方法‘area’但非虚析构函数”。为什么?代码片段:

头文件:

class Shape {
public:
virtual ~Shape();
protected:
virtual double area() const = 0;
}

class Polygon : public Shape {
public:
~Polygon();
protected:
double area() const;
private:
Vertex* vertices;
}

实现:

Polygon::~Polygon() {delete[] this->vertices;}
double Polygon::area() const {
...
return areaSum;
}

最佳答案

听起来像是 eclipse 中的错误,或者它可能是关于小问题的“风格”警告。 Polygon 确实有一个自动的虚拟析构函数,因为它的基类析构函数是虚拟的。

关于c++ - 虚方法但非虚析构函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7195804/

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