![]() |
1
5
我听到它解释的一种方法是使用手机或对讲机。您(指导者)持有一端并声明您是一个对象实例。你呆在一个地方(即堆),而学生们在教室的另一端经过(如果是手机的话,那是扬声器电话)。 他们可以通过他们对你的“参考”与你互动,但他们并不真正拥有“你”。 |
![]() |
2
3
|
![]() |
3
2
我喜欢描述引用类型和值类型之间差异的URL类比。您可以传递一个URL作为对某些内容的引用。您可以在不修改该内容的情况下修改该URL。您还可以通过URL访问内容,以修改内容。 这是一个有用的参考:
|
![]() |
4
2
试着解释参考文献 数字 因为纯文本有时无法传达给大多数人。许多关于这个话题的资源和书籍,确实试图通过数字来解释,因为仅仅通过口头交流很难将分配联系起来(这对于大多数人来说,主要是注意力跨度的问题)。 至少试着指出对象是如何相互关联的,一个简单的例子就是一个简单的引用。 鉴于:
实例化类时
还要尝试解释堆和堆栈分配之间的区别。使用参数调用方法。简单的例子如下: 给出以下方法:
打电话时
另一个示例是说明一个对象数组,多维数组包含一个数组数组。 |
![]() |
5
1
我发现 this article 对于解释传入c的参数非常有用。本文还很好地解释了一般意义上的价值和参考类型。 它更像是一种视觉表现,对我有很大帮助。 |
![]() |
6
1
图片和图表。 人们形成他们正在学习的概念的心理图像,以及 参考文献 以及他们与他们的关系 物体 是开始的好方法。同样,可视化 对象 作为包含成员 变量 (包括对其他对象的引用)和成员 方法 一个LA UML图非常有用。 稍后,如果您觉得有必要,可以深入研究引用和基元类型实际上是如何实现的。但是尽可能拖延这些讨论,因为人们可能陷入将抽象概念与表示性细节配对的困境,这会分散学习抽象概念的注意力。 |
![]() |
7
1
当我学习vb6时,参考文献实际上让我有点困惑。然后我尝试学习C++,在处理指针之后,引用对我来说是完全有意义的。从实际发生的角度理解它比从OO概念的角度理解它更容易。也许你可以复习一下你课上的那些东西。 |
![]() |
8
1
我建议尽量减少使用裸词“reference”,因为它可以在.NET中用于引用两个非常不同的东西:类类型存储位置的内容和用“ref”限定符传递的参数。前者使用术语“对象引用”,后者使用术语“引用参数”。
在描述“对象引用”是什么时,我建议使用术语“对象ID”。对象ID有一些不同于“地址”的东西:
|
|
Henry Vonfire · 如何在Slick中实现值类型? 10 年前 |