error:dfs(int &visited[])
初衷:通过建立引用型形参使得 dfs 能够修改数组 visited 的元素的值。
错因:引用型形参实际上是取实参的地址,从而获得修改实参的能力。而这里给函数 dfs 传递的是数组 visited 的首地址,地址是无法再取地址的。实际上,把 visited 的首地址传给函数后,函数已经获得修改数组 visited 的能力。
解决方法:把函数 dfs 的参数“int& visited[]”改为“int visited[]”即可。dfs(int visited[])