我是一名学生,我在理解对象编程 (OOP( 中单成员指针的概念时遇到了一个问题,我在 Google 上搜索了很多,但没有得到这个想法!
你能帮我详细理解一下吗?
因此,在从评论中进一步澄清后,您似乎想知道类中的指针成员,如下所示:
class Foo
{
public:
int* a;
};
现在类中的指针基本上与普通变量相同,但由于您在这里处理的是内存,因此您将是 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;
}
};
请先了解这三个,称为三法则,然后再继续将指针作为类中的属性。
每当你发现自己在类中使用指针时,你需要实现三法则。
希望这对:)有所帮助