2010년 10월 31일 일요일

델파이와 c++의 데이터 타입표

delphi data type c++ data type bytes range of value
Byte unsigned __int8 (1byte: unsigned) 0 to 255
ShortInt __int8 (1byte: signed) -127 to 127
Word unsigned __int16 (2byte, unsigned) 0 to 65,535
SmallInt
__int16
(2byte: signed) -32,768 to 32,767
LongWord
unsigned __int32
(4byte: unsigned) 0 to 4,294,967,295
unsigned int
unsigned long
Cardinal
unsigned __int32
LongInt
__int32
(4byte: signed) -2,147,483,648 to 2,147,483,647
int
unsigned long
Integer
__int32
Int64 __int64
(8byte: signed) -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
long long

2010년 10월 28일 목요일

std::map 에서 key를 내가 원하는 놈으로 쓰기

map이란 놈이 조금 당혹스러운 면이 있다..

 

find 메소드에서 내가 원하는 결과를 얻을려면..

 

operator< 를 구현해줘야 하는데..

 

딴 operator가 없으니 가령.. "==" operator..

 

serial한 값을 넣어서 비교 해줘야 하는것 같다..

 

내가 능력이 딸려서 그런지는 모르겠지만..

 


 


struct net_event_key
{
 DWORD _type;
 WORD _lParam;
 WORD _wParam;

 explicit net_event_key( DWORD type, WORD lparam, WORD wparam ) {
  _type = type;
  _lParam = lparam;
  _wParam = wparam;
 }


 bool operator<( const net_event_key& param ) const {
  unsigned __int64 lvalue = 0;
  lvalue = (unsigned __int64 ) _type << (4 * 8);
  lvalue |= _lParam << ( 2 * 8 );
  lvalue |= _wParam;

  unsigned __int64 rvalue = 0;
  rvalue = (unsigned __int64 ) param._type << (4 * 8);
  rvalue |= param._lParam << ( 2 * 8 );
  rvalue |= param._wParam;

  return lvalue < rvalue;
 }

};


이런 식으로 해주니 된다..

2010년 10월 19일 화요일

delphi의 TDateTime

새로 입사한 회사에서 쓰는거라 delphi를 쓰긴 쓰지만..

 

이건 머.. ㅡㅡa

 

아놔..

 

사족은 닥치고.. TDateTime은 1899년 12월 30일 12:00 AM부터 날짜와 시간을 담고 있다.

1은 하루이고 소숫점이 시간값이다.

 

24시간 = 1

1시간 = 0.04166666666667

1분 = 6.944444444444e-4

1초 = 1.157407407407e-5

 

짜증난다 정말.. -_-;;

 

 

2010년 10월 12일 화요일

coherent

그룹관리 시스템 제목..

진짜 간단하게 아무런 셋팅 없이 쓸수 있는 사내 메신저 및 일정관리 프로그램을 만드는 것을 목표로 만들어야 겠다.

채팅부분을 뺀 나머지는 web-service 형태로 이 웹 서버도 단독 서버형태로 최대한 사용자가 쉽게 쓸수 있게 하는 것을 목표로 하겠다.

포트폴리오 목적도 있고, 사내 메신저가 끝나면 android와 아이폰용으로 client를 개발하고 여기다 넣어 놔야겠다.

오늘부터 스타트...