Resolved
Written on
·
174
0
main의 변수명과 함수의 변수명이 겹칠 경우 에러가 나는 이유는 어떤 변수가 지역이고 전역인지 구분할 수 없는 상태에서 변수 값을 변경할 수 없기 때문입니다. 따라서 전역변수 값을 함수 내에서 변경하기 위해서는 해당 변수 앞에 global로 표기하고 사용해야 하는 것으로 이해합니다.
제가 궁금한 것은 리스트의 경우, global 표기를 하지 않음에도 불구하고 main에서 선언된 'res' 리스트가 DFS 함수 내에서 에러 없이 어떻게 값을 변경할 수 있는지입니다.
첫문단에서 말씀 드린 제 이해가 잘못된 것인지, 추가적인 이해가 더 필요한 것인지 알고 싶습니다.
Answer 1
0
" 잠깐지식(전역변수와 지역변수) " 영상을 방금 다시 녹화해서 올려놓았습니다. 함수가 전역과 지역을 어떤 순으로 인식하는지, 그리고 리스트는 global 선언 없이 왜 잘작동하는지, 리스트는 어느 상황에서 에러가 나는지를 설명해 놓았으니 참조하세요.