반응형
안녕하세요. 아주 간단한 형변화 함수를 작성해 두려고 합니다.
간단하게 template와 typeid를 통해 사용하시면됩니다.
#include "iostream"
template <class T>
CString GetValueToString(T& tVal)
{
CString str = L"";
if(typeid(tVal).name() == typeid(int).name())
{
str.Format(L"%d", tVal);
}
else if(typeid(tVal).name() == typeid(float).name() || typeid(tVal).name() == typeid(double).name())
{
str.Format(L"%f", tVal);
}
else if(typeid(tVal).name() == typeid(CString).name())
{
str.Format(L"%s", tVal);
}
return str;
}
typeid의 정보를 변수화 하고 싶은 경우에는 아래와 같이 하시면 됩니다.
const std::type_info& ti = typeid(tVal) |
반응형
'C, C++, C# > MFC' 카테고리의 다른 글
MFC Log 클래스 (0) | 2020.01.14 |
---|---|
[MFC] 프로그램 실행시 바로 Dialog 숨기기 SHOW_HIDE (2) | 2017.03.22 |
MFC StretchBlt 비트맵 확대 축소 (0) | 2017.01.06 |
[프로그램] 소수점 랜덤 프로그램 (0) | 2016.11.28 |
mfc 다이얼로그 크기 변경 위치 이동 (0) | 2016.11.17 |