[c++] 네임스페이스와 템플릿

이 블로그에서는 C++ 프로그래밍 언어에서 사용되는 네임스페이스와 템플릿에 대해 살펴보겠습니다.

네임스페이스

네임스페이스는 이름 충돌을 방지하고 범위를 제한하는 데 사용됩니다. 예를 들어, 동일한 이름을 가진 함수, 변수, 또는 클래스를 구별하기 위해 네임스페이스를 사용할 수 있습니다.

namespace MyNamespace {
    int myFunction() {
        return 42;
    }
}

위의 예제에서 MyNamespace라는 네임스페이스에 myFunction이라는 함수가 정의되어 있습니다. 다른 코드에서 이 함수를 사용할 때는 MyNamespace::myFunction()으로 호출할 수 있습니다.

템플릿

템플릿은 함수나 클래스가 여러 데이터 유형에 대해 작동하도록 하는 메커니즘을 제공합니다. 즉, 템플릿을 사용하면 동일한 로직을 가진 함수나 클래스를 여러 가지 데이터 유형에 대해 사용할 수 있습니다.

template <class T>
T myFunction(T a, T b) {
    return a + b;
}

위의 예제에서 myFunction은 템플릿 함수로, 어떤 데이터 유형이든 받아들일 수 있습니다.

결론

네임스페이스와 템플릿은 C++에서 코드의 유연성을 높이고 이름 충돌을 피하기 위해 사용되는 중요한 기능입니다. 올바르게 사용하면 코드의 가독성과 재사용성을 향상시킬 수 있습니다.

이상으로 C++의 네임스페이스와 템플릿에 대한 간략한 소개를 마치겠습니다.

참고문헌: