8.6 传值调用

优质
小牛编辑
136浏览
2023-12-01

当你把一个结构作为实参传递时,请牢记实参和形参并非同一变量。而是最初有着相同值的两个变量(一个在调用者中,另一个在被调用者中)。比如,当调用printPoint时,栈图看起来会是这样:

enter image description here

如果printPoint改变了p的一个实例变量,blank并不会随之受到影响。当然,printPoint函数没理由去修改它的参数,因而两个函数之间的这种隔离是合适的。

这种类型的参数传递被称为"按值传递",因为传递给函数的是结构(或其他类型)的值。