StoryCode

Template Meta Programming

IT 용어, 인터넷 활용 등등
반응형

참조 1) https://librewiki.net/wiki/%ED%85%9C%ED%94%8C%EB%A6%BF_%EB%A9%94%ED%83%80%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D

 

참조 2)

https://sungbeom.github.io/2020/01/05/EffectiveCpp7-8.html

 

C++에서의 템플릿 메타 프로그래밍이란, 템플릿을 이용하여 컴파일 타임에 "코드를 생성"

 

int Fibo(int n)// 재귀 함수
{
    if(n <= 1) return 1;
    return Fibo(n-1) + Fibo(n-2);
}

// 템플릿 메타 프로그래밍
template <int N>
struct Fibo
{
    enum{
        value = Fibo<N-1>::value + Fibo<N-2>::value
    }
}

template <>
struct Fibo<0>
{
    enum{
        value = 1
    }
}

template <>
struct Fibo<1>
{
    enum{
        value = 1
    }
}
반응형

'IT 용어, 인터넷 활용 등등' 카테고리의 다른 글

MAU, MCU, DAU, ACU  (0) 2022.01.21
Fluent API, 빌더 패턴  (0) 2021.11.15
JWT ( JSON Web Token )  (0) 2021.08.19
Software.Architect.AA, TA, DA, QA, BA  (0) 2020.08.21
CI, DI  (0) 2020.04.20