3:16초에 근데 이렇게 해가지고 부분에 "{}"를 만들어서 자식 node들을 생성하던데 왜 중괄호로 감싸게 만드는 건가요?
141
1 asked
static TreeNode<string> MakeTree()
{
TreeNode<string> root = new TreeNode<string>() { Data = "R1 개발실" };
{
{
TreeNode<string> node = new TreeNode<string>() { Data = "디자인팀" };
node.Children.Add(new TreeNode<string>() { Data = "전투" });
node.Children.Add(new TreeNode<string>() { Data = "경제" });
node.Children.Add(new TreeNode<string>() { Data = "스토리" });
root.Children.Add(node);
}
{
TreeNode<string> node = new TreeNode<string>() { Data = "프로그래밍팀" };
node.Children.Add(new TreeNode<string>() { Data = "서버" });
node.Children.Add(new TreeNode<string>() { Data = "클라" });
node.Children.Add(new TreeNode<string>() { Data = "엔지" });
root.Children.Add(node);
}
{
TreeNode<string> node = new TreeNode<string>() { Data = "아트팀" };
node.Children.Add(new TreeNode<string>() { Data = "배경" });
node.Children.Add(new TreeNode<string>() { Data = "캐릭터" });
root.Children.Add(node);
}
}
root노드를 만들고 그 아래에 {}를 열어서 내용을 작성하는 이유가 궁금해요.
Answer 2
0
안녕하세요, 인프런 AI 인턴입니다. 이센스님. 질문해 주신 TreeNode 코드의 구조와 중괄호의 사용에 대해 설명드리겠습니다.
코드에서 중괄호 {}를 사용하는 이유는 주로 코드의 가독성을 높이고 변수의 생명주기를 제어하기 위해서입니다. 다음과 같은 이유로 중괄호가 사용됩니다:
가독성: 중괄호를 사용하여 관련된 코드 블럭을 시각적으로 구분할 수 있습니다. 이를 통해 각 트리 노드와 그 자식들을 명확하게 구분할 수 있고, 코드의 구조가 더 명확해집니다.
변수 생명주기 관리:
{}안에 선언된 변수는 해당 블럭 내부에서만 유효합니다. 예를 들어 각 블럭에서 사용한node변수는 중괄호 블럭 내에서만 유효하며, 이후에 다른 중괄호 블럭에서 같은 이름을 사용할 수 있습니다.
중괄호를 사용하지 않고 작성할 수도 있지만, 위와 같은 이유로 해당 구조를 사용하는 것이 일반적입니다. 코드가 복잡해질수록 이렇게 작성하는 것이 문제를 예방하고 유지보수하는데 도움이 될 수 있습니다.
추가적으로, 중괄호 사용 외에도 이 수업과 관련된 다른 질문들과 답변이 있어 공유드립니다:
이 방법은 특정한 방식으로 코드를 관리하고자 하는 의도이며, 각 개발자의 스타일이나 팀의 코딩 컨벤션에 따라 달라질 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
게임개발에서 주로 어느부분에 알고리즘들이 쓰이는지 궁금합니다
0
171
2
글꼴 바꿔도 자간이 좁아 찌그러져보이시는 분들
0
88
1
NullReferenceException 예외) 같은 실수하시는분 계실까봐 남겨요
0
66
1
parent를 Pos타입으로 만든 이유
0
74
1
콘솔창에 격자가 안나옴 미로 생성 X
0
133
1
격자 생성 안됨 무한루프
0
114
1
BFS 질문
0
143
2
격자 무한 출력
0
167
2
A* 의 PriorityQueue 관련 질문입니다
0
155
2
vscode에서 원그리기
0
180
1
환결설정 강의 원 그리기
0
122
1
15-17분
0
87
1
동적 배열 관련 질문입니다!
0
209
1
Big-o 표기법에서 시간 복잡도
0
167
1
7:40에서 언급하신 색상이 날아가는 문제 이해를 못하겠습니다
0
151
1
트리구현연습 강의 질문있어요
0
142
1
창은 뜨는데 맵이 나타나지 않아요.
0
175
1
Ctrl F5 하면 나오는 창은 어디서 설정할까요??
0
271
1
void CalcPathFromParent(Pos[,] parent)에 대해서
0
202
2
NullReferenceException예외가 발생했을때 어떻게 해야하나요?
0
229
1
[해결] 환경설정 강의에서 원이 이상하게 그려지는 문제
3
311
2
오른손 법칙에서 플레이어 점이 안 움직입니다
0
245
2
맵 만들기 오류
0
179
1
맵 만들기 부분 오류
0
236
1

