edit ZMainHead.H a bit
This commit is contained in:
@ -130,7 +130,7 @@
|
||||
typedef TString TypeCString;
|
||||
typedef TString TypeString ;
|
||||
|
||||
2 번 줄 코드가 좋 낳아 보이지 않을까. 2008-11-05 13:42:00
|
||||
2 번 줄 코드가 좀 낳아 보이지 않을까. 2008-11-05 13:42:00
|
||||
|
||||
■ template 함수나 클래스에서 functor 인수는 참조로 선언하지 않는다. 아래 참고,
|
||||
|
||||
@ -401,9 +401,8 @@
|
||||
|
||||
#if defined(__linux__)
|
||||
|
||||
// 리눅스 Multi Thread Programming 에서
|
||||
// CDoubleList 라든가 여러 자료구조에서 쓰는
|
||||
// 동기화 뮤텍스를 위해 pthread.h 를 포함한다.
|
||||
// 리눅스 Multi Thread Programming 에서 ZCObjList 라든가 여러
|
||||
// 자료구조에서 쓰는 동기화 뮤텍스를 위해 pthread.h 를 포함한다.
|
||||
|
||||
#include <pthread.h>
|
||||
|
||||
@ -544,7 +543,7 @@ namespace ZNsMain
|
||||
|
||||
#if(0)
|
||||
|
||||
typedef unsigned wchar_t ZTypUWChar ;
|
||||
typedef unsigned wchar_t ZTypUWCha ;
|
||||
/* VC++ 2012 에서는 여기서 4076 번 경고가 발생한다.
|
||||
|
||||
warning C4076: 'unsigned' : can not be used with type 'wchar_t'
|
||||
@ -757,8 +756,8 @@ namespace ZNsMain
|
||||
가이드라인을 제시하는 역할의 어떤 클래스나 데이타 타입이 올 수 있는데 이런 자료형이 이
|
||||
이름공간에 온다. 어떤 데이타타입을 주로 typedef 하는 클래스라면 접두어 ZtCType 를 붙인다.
|
||||
|
||||
■ ZtCTypeCRTP_T<> 는 어떤 클래스 템플릿이 CRTP(CURIOUSLY RECURRING TEMPLATE PATTERN) 를 사용
|
||||
하는지 아닌지를 알려준다. ZtCTypeCRTP_T<> 을 설계하지 않는다면, 같은 기능을 하기 위해, 클
|
||||
■ ZtCTypeCRTP<> 는 어떤 클래스 템플릿이 CRTP(CURIOUSLY RECURRING TEMPLATE PATTERN) 를 사용
|
||||
하는지 아닌지를 알려준다. ZtCTypeCRTP<> 을 설계하지 않는다면, 같은 기능을 하기 위해, 클
|
||||
래스를 2 개(CRTP 를 사용하는 클래스와, 그렇지 않은 클래스)를 만들어야 했을 것이다.
|
||||
|
||||
-- 2010-03-12 20:00:00
|
||||
@ -772,17 +771,17 @@ namespace ZNsMain
|
||||
|
||||
template< typename TTypeChild=ZCEmpty, bool TTypebUseCRTP =false
|
||||
>
|
||||
class ZtCTypeCRTP_T //////////////////////////////////////////////
|
||||
class ZtCTypeCRTP ////////////////////////////////////////////////
|
||||
{
|
||||
public:
|
||||
typedef TTypeChild TypeData;
|
||||
public:
|
||||
enum{EUseCRTP=(int)TTypebUseCRTP};
|
||||
enum{EUseCRTP=(ZTypIntE)TTypebUseCRTP};
|
||||
public:
|
||||
};/*
|
||||
template< typename TTypeChild=ZCEmpty, bool TTypebUseCRTP =false
|
||||
>
|
||||
class ZtCTypeCRTP_T ////////////////////////////////////////////*/
|
||||
class ZtCTypeCRTP //////////////////////////////////////////////*/
|
||||
|
||||
|
||||
template< typename TTypeChild =ZCEmpty
|
||||
@ -795,18 +794,18 @@ namespace ZNsMain
|
||||
typedef TTypeChild TypeData;
|
||||
typedef TTypeBase TypeBase;
|
||||
public:
|
||||
enum{EUseCRTP=(int)TTypebUseCRTP};
|
||||
enum{EUseCRTP=(ZTypIntE)TTypebUseCRTP};
|
||||
public:
|
||||
}; /*
|
||||
template< typename TTypeChild =ZCEmpty
|
||||
, typename TTypeBase =ZCEmpty
|
||||
, bool TTypebUseCRTP=false
|
||||
>
|
||||
class ZtCTypeCRTP_T2 ///////////////////*/
|
||||
class ZtCTypeCRTP2 /////////////////////*/
|
||||
|
||||
/*//////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
■ class ZtCTypeCRTP_T2<> 이 왜 필요한지, 그리고 사용례는 CWorkPool.H 의
|
||||
■ class ZtCTypeCRTP2<> 이 왜 필요한지, 그리고 사용례는 CWorkPool.H 의
|
||||
'주석-CCtrlAllocWork::CRTP2'를 참고한다.
|
||||
|
||||
-- 2012-09-20 09:46:00
|
||||
@ -816,7 +815,7 @@ namespace ZNsMain
|
||||
|
||||
/*/////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
■ class ZtCTypeCRTP_T<> 이 단점은 상속하지 않은 class 형은 알 수 없는데, 이것을 알아내기 위해
|
||||
■ class ZtCTypeCRTP<> 이 단점은 상속하지 않은 class 형은 알 수 없는데, 이것을 알아내기 위해
|
||||
|
||||
class ZtCTypeNowCRTP<>
|
||||
|
||||
@ -1200,7 +1199,10 @@ namespace ZNsMain
|
||||
|
||||
|
||||
template< typename Type1 , typename Type2=void,
|
||||
typename Type3=void, typename Type4=void, typename Type5=void, typename Type6=void, typename Type7=void, typename Type8=void, typename Type9=void, typename Type10=void, typename Type11=void
|
||||
typename Type3=void, typename Type4=void,
|
||||
typename Type5=void, typename Type6=void,
|
||||
typename Type7=void, typename Type8=void,
|
||||
typename Type9=void, typename Type10=void, typename Type11=void
|
||||
>
|
||||
struct ZtStTuple //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
{
|
||||
@ -1210,7 +1212,10 @@ namespace ZNsMain
|
||||
ZtStTuple(Type1 _T1):_1(_T1){}
|
||||
};/*
|
||||
template< typename Type1 , typename Type2=void,
|
||||
typename Type3=void, typename Type4=void, typename Type5=void, typename Type6=void, typename Type7=void, typename Type8=void, typename Type9=void, typename Type10=void, typename Type11
|
||||
typename Type3=void, typename Type4=void,
|
||||
typename Type5=void, typename Type6=void,
|
||||
typename Type7=void, typename Type8=void,
|
||||
typename Type9=void, typename Type10=void, typename Type11=void
|
||||
>
|
||||
struct ZtStTuple ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
|
||||
|
||||
|
Reference in New Issue
Block a user