C++> typeid 를 이용한 실시간 타입 알아내기
C++> typeid 를 이용한 실시간 타입 알아내기
#include <stdio.h>
#include <typeinfo.h>
class myclass
{
};
void main()
{
int a, b;
char c;
myclass ob1;
printf("%s %s %s\n", typeid(a).name(), typeid(b).name() , typeid(c).name());
printf("%s\n", typeid(ob1).name());
bool isTrue = ( typeid(a) == typeid(b) ); // true
}
컴파일 옵션에는 Enable Run-time type information 이 체크되어 있어야 함.
자세한 사항은
잇힝~ 이런게 있어야 말이 되지..... 그 동안 왜 몰랐을까 ㅡㅡ;
원본 위치 <http://blog.naver.com/PostView.nhn?blogId=sonbosun&logNo=80003997729&from=search>
#include <iostream>
#include <typeinfo>
using namespace std;
int main ( int argc, char** argv )
{
char* psz = NULL;
int nNum = 0;
unsigned long ulNum = 0L;
printf("%s\n", typeid(psz).name() );
printf("%s\n", typeid(nNum).name() );
printf("%s\n", typeid(ulNum).name() );
return 0;
}
출력
---------------------------------------------
char *
int
unsigned long
'C & C++ 관련' 카테고리의 다른 글
고수들이 절대 가르쳐 주지 않는 C/C++ 프로그래밍 팁 #1 (Podcast) (0) | 2007.06.20 |
---|---|
윈도우에서 struct timeval 을 이용한 시간 출력 (0) | 2007.05.22 |
c에서 프로그램 수행시간재는법? (0) | 2007.05.21 |