作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
<分区>
在这里,我们以完全相同的方式初始化两个关联数组arr_A
和arr_B
,但是arr_A
是在顶层初始化的,而 arr_B
在函数 foo
中初始化:
#!/bin/bash
declare -A arr_A
arr_A[bar]=42
function foo() {
declare -A arr_B
arr_B[bar]=58
echo "content of arr_B inside foo = ${arr_B[@]}"
}
foo
echo "content of arr_A on top level = ${arr_A[@]}"
echo "content of arr_B on top level = ${arr_B[@]}"
预期输出:
content of arr_B inside foo = 58
content of arr_A on top level = 42
content of arr_B on top level = 58
实际输出:
content of arr_B inside foo = 58
content of arr_A on top level = 42
content of arr_B on top level =
为什么会这样?
有没有办法在函数内部初始化一个新的关联数组,并在函数返回后使用它?
我是一名优秀的程序员,十分优秀!