OOP 中的单成员指针



我是一名学生,我在理解对象编程 (OOP( 中单成员指针的概念时遇到了一个问题,我在 Google 上搜索了很多,但没有得到这个想法!

你能帮我详细理解一下吗?

因此,在从评论中进一步澄清后,您似乎想知道类中的指针成员,如下所示:

class Foo
{
public:
int* a;
};

现在类中的指针基本上与普通变量相同,但由于您在这里处理的是内存,因此您将是 3 件额外的事情(三法则(:

  1. 破坏者
  2. 复制构造函数
  3. 超载operator=

我不会在这里详细介绍,但它应该看起来像这样:

class Foo
{
private:
int a*;
public:
~Foo() // destructor
{
delete a;
}
Foo(const Foo& cpy) // copy constructor
: a(cpy.a) {}
Foo& operator=(const Foo& cpy) // assignment
{
a = copy.a;
}
};

请先了解这三个,称为三法则,然后再继续将指针作为类中的属性。

每当你发现自己在类中使用指针时,你需要实现三法则。

希望这对:)有所帮助

相关内容

  • 没有找到相关文章

最新更新