인프런 커뮤니티 질문&답변

cidgml9님의 프로필 이미지
cidgml9

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

2주차 개념 #10. 너비우선탐색(BFS, Breadth First Search)

변수 선언을 내부에서 해도 문제없나요?

해결된 질문

작성

·

34

0

안녕하세요 선생님. 강의 잘 보고 있습니다.

당근카 답안코드에서 선생님은 큐와 ny nx를 메인 함수 내부에서 선언하셨습니다. 맨 처음에 사용할 모든 변수를 선언해놓는 것과 선생님의 방식 사이에서 궁금한 것이 생겼습니다.

 

제 생각에는 선생님의 방식대로면 상대적으로 조금 더 흘러가는 대로 자유롭게 코드를 짤 수 있을 것 같습니다. 하지만 혹시 코드가 복잡해지면 헷갈려서 실수 가능성이 올라가진 않을까 생각도 듭니다.

그래서 그 둘을 그저 취향 차이로 여겨도 되는지 아니면 편의성과 성능 측면에서 우세한 것이 있는지 알고 싶습니다.

감사합니다.

 

 

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

답변 2

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 ㅎㅎ

당근카 답안코드에서 선생님은 큐와 ny nx를 메인 함수 내부에서 선언하셨습니다. 맨 처음에 사용할 모든 변수를 선언해놓는 것과 선생님의 방식 사이에서 궁금한 것이 생겼습니다.

-> 이부분은 이 강의 참고부탁드립니다. ny, nx 는 내부에서 선언하는게 좋습니다.

https://www.inflearn.com/course/lecture?courseSlug=10%EC%A3%BC%EC%99%84%EC%84%B1-%EC%BD%94%EB%94%A9%ED%85%8C%EC%8A%A4%ED%8A%B8-%ED%81%B0%EB%8F%8C&unitId=144194&subtitleLanguage=ko


 

또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


0

안녕하세요, 인프런 AI 인턴입니다. cidgml9님이 궁금해하신 전역 변수와 지역 변수의 사용에 대한 질문에 대해 차이점을 간단히 설명드리겠습니다.

전역 변수와 지역 변수의 선택은 주로 코드의 가독성, 메모리 관리, 그리고 변수의 사용 범위에 따라 결정됩니다.

  1. 전역 변수(Global Variable)는 프로그램 전반에서 접근할 수 있어 유연하지만, 코드가 복잡해질 경우 어떤 함수에서 변수가 변경되었는지 추적하기 어려울 수 있습니다. 또한, 메모리에 항상 할당되어 있으므로 메모리 사용 효율이 떨어질 수 있습니다.

  2. 지역 변수(Local Variable)는 특정 블록이나 함수 내에서만 유효하므로 해당 범위 내에서만 관리할 수 있어 깔끔하고 실수의 가능성을 줄일 수 있습니다. 프로그램이 복잡할 때는, 지역 변수를 적절히 사용하는 것이 디버깅에 도움이 됩니다.

위와 같은 관점에서 본다면, 선생님의 방식인 메인 함수 내부에서 변수를 선언하는 것은 자유롭고 각 함수나 블록이 담당하는 역할을 명확히 하여 코드의 이해를 돕습니다. 하지만, 때에 따라 전역 변수를 사용하는 것이 더 효율적일 때도 있습니다. 이는 주로 프로그램의 구조와 설정에 따라 달라질 수 있습니다.

관련 질문과 답변을 참고하면 도움이 될 것 같습니다:

  1. “3주차 개념강의중에 전역변수 질문”: 이 질문에서는 전역 변수로 인해 발생할 수 있는 문제점과 해결 방법에 대해 논의하고 있습니다.

  2. “1-L 주몽 질문입니다.”: 지역 변수와 전역 변수의 차이에 대한 다른 학습자의 질문이 다루어졌습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

cidgml9님의 프로필 이미지
cidgml9

작성한 질문수

질문하기