🙇‍♀️템플릿 기초


🪐템플릿 기초

#include <iostream>
using namespace std;

template<typename T> // 템플릿 선언
class RandomBox
{
public:
    T GetRandomData() // 리턴 값이 템플릿
    {
        int idx = rand() % 10;
        return _randData[idx];
    }

public:
    T _randData[10]; // 타입형이 템플릿
};

template<typename T> // 템플릿 선언
void Print(T a) // 매개변수의 타입형이 템플릿
{
    cout << a << endl;
}

int main()
{
    srand(static_cast<unsigned int>(time(nullptr)));

    // 템플릿 : 함수나 클래스를 찍어내는 틀
    // 조커카드


    RandomBox<int> rbx1; // 템플릿이 포함된 클래스를 선언 할 때, <> 로 타입형을 적어준다
    for (int i = 0; i < 10; i++)
    {
        rbx1._randData[i] = i;
    }
    int value1 = rbx1.GetRandomData();
    cout << value1 << endl;


    RandomBox<float> rbx2;
    for (int i = 0; i < 10; i++)
    {
        rbx2._randData[i] = i + 0.5f;
    }
    float value2 = rbx2.GetRandomData();
    cout << value2 << endl;
}

태그:

카테고리:

업데이트: