函数调用涉及 3 个操作:

    1. 空间分配:调用方为被调用方分配栈内存空间。
    2. 参数传递:调用方传递被调用方所需的参数。
    3. 控制传递:调用方通过设置栈顶寄存器和栈底寄存器将执行权交给被调用方。

    Go 的参数传递有如下特点:
    函数调用 - 图1