1. namespace
c#에는 namespace 라는 구문이 있다. 어떨때 필요하냐?
예를들어 규모가 큰 프로젝트에서 개발팀 A,B,C가 파트를 나누어서 개발을 하고
프로젝트를 합칠때, 같은 변수명, 함수명을 만들었다면, 중복으로 에러가 날 것이다.
이럴때, 필요하다.
예시)
// A팀의 namespace
namespace A {
string people;
void eat() {
printf("A팀의 eat() 호출!\n");
}
}
// B팀의 namespace
namespace B {
string people;
void eat() {
printf("B의 eat() 호출!\n");
}
}
int main()
{
A::people = "A팀개발자";
A::eat(); //A팀의 메서드
B::people = "B팀개발자";
B::eat(); //B팀의 메서드
return 0;
}
- namespace A { } 로 묶어 주고 , 중괄호 안의 변수 people 과 메소드 eat()은 A::people A::eat()으로 호출하였다.
2. using
using은 namespace를 사용하기 간편하게 해줍니다.
예시)
namespace A {
string people;
void eat() {
printf("A팀의 eat() 호출!\n");
}
}
using namespace A;
int main()
{
people = "A팀개발자";
eat();
return 0;
}
- using namespace A를 선언해주면, 변수 people 나 메소드 eat() 앞에 A::를 붙이지 않아도 됩니다.
namespace A {
string people;
void eat() {
printf("A팀의 eat() 호출!\n");
}
}
using A::people;
int main()
{
people = "A팀개발자";
A::eat();
return 0;
}
- 마찬가지로 namespace 안의 각 변수와 메소드를 지정해 줄 수 있습니다.
reference : https://leehosung3576.tistory.com/20
'개발 언어 > C,C++,C#' 카테고리의 다른 글
[C#] 문자열 - 특정 문자열 위치 값 알아내기 (LastIndexOf() 함수) (0) | 2019.11.20 |
---|---|
c# 스레드 중단 / thread.abort() (0) | 2019.09.03 |
c# partial class (0) | 2019.08.28 |
c# InitailizeComponent 메서드 (1) | 2019.08.27 |
c# color.FromArgb 매서드 (0) | 2019.07.31 |
댓글