函数其实可以类比成我们生活当中的加工厂,参数就相当于加工产品所需要的原材料。而返回值就是我们生产出来的产品。对于普通的函数的话,很好理解,当然这种类比的例子也很多。
其实我想说的主要是指针函数,这类函数返回值是一个指针,一提到指针,就有些犯晕,那么我们该如果接收返回值呢,需要开辟空间吗?这些疑问就再脑里转圈了。那么接下来我把自己的理解给大家分享一下。我习惯把这类函数理解成开发商和土地管理局的关系。比如开发商想要开发一个住宅小区,名字叫幸福小区。那么其实住宅小区就可以类比成我们的数据类型,小区名字就可以类比成指针。那数据类型有了,指针也有了,空间需要开发商自己定义吗?当让不是了,类比现实中,土地是土地管理局划拨的,那么土地管理局就相当于指针函数,需要开发商提供材料就可以了,这其实就是一个传参的过程。最后土地管理局一块用于住宅的土地卖给了开发商,开发商把幸福小区和这块土地一对应,就可以操作这块土地了。这其实就是一个指针函数接收返回值的过程,我们只需要定义一个与应数据类型的指针接收一下指针函数的返回值就可以了,开辟空间的工作函数内部已经给我们开辟好了。