微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

像这样在类中使用运算符 new 是否正确

如何解决像这样在类中使用运算符 new 是否正确

嘿伙计们,我试图制作抽象基类,但我做到了。它可以正常工作,但我不确定我是否可以在声明中使用这样的运算符 new。我以为我可以在构造函数中使用 operator new 但看起来我可以像这样使用 operator new :

#include <iostream>
using std::cout;

class abs
{
private:
    int* x = new int;
    int* y = new int;
protected:
    static int count;
public:
    virtual void show() = 0;
    abs() { *x = 0; *y = 1; count++; cout << "Vytvoren objekt tridy ABS: " << count << "\n"; };
    virtual ~abs() { delete x; delete y; count--; cout << "Objekt tridy ABS zrusen: " << count << "\n"; };
};

class one : public abs
{
private:
    int* z = new int;
public:
    virtual void show();
    one();
    virtual ~one() { delete z; count--; cout << "Zrusen objekt tridy ONE: " << count << "\n"; };
};

#endif

是不是可以这样使用还是错了?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。