功能

你可以通过将 <parameter> 添加到其标签中来向函数添加起始变量。这些起始变量可以通过%n 访问,其中 n 是起始变量的数字(第一个是%1,第二个是%2。这个%n 方法适用于%1 - %9。对于参数 10 - 255,你需要使用 Shift 命令)。
例如:

:function <var1> <var2>

一旦你使用 call :function param1 param2,可以使用%1 访问 param1,使用%2 访问 param2
注意:<parameter> 并非绝对必要,但它有助于提高可读性。

当许多变量飞来飞去时,一个有用的技巧是将 setlocalendlocal%n 配合使用。setlocalendlocal 本质上使函数成为命令提示符的独立实例,设置在其中的变量只会在框架中时保持不变。

如果你正在使用 setlocalendlocal,并且你正在返回全局值,请使用此选项。

endlocal & set var=variable

这将全局价值 var 设置为 variable。你可以将这些变量链接在一起。

endlocal & set var=variable & set var2=variable number 2

这将全局变量 var 设置为 variable,将全局值 var2 设置为 variable number 2
由于代码块中的代码也同时执行,因此你也可以执行此操作。

if "%var%"=="" (
    endlocal
    set %~2=10
)

但是,你不能这样做。

if "%var%"=="" (
    set %~2=10
    endlocal
)