16 lines
365 B
C
16 lines
365 B
C
|
|
#ifndef __SINGLETON_H__
|
|||
|
|
#define __SINGLETON_H__
|
|||
|
|
|
|||
|
|
//饿汉模式
|
|||
|
|
#define SINGLETON_DEFINE_S(TypeName) \
|
|||
|
|
static TypeName* Get() \
|
|||
|
|
{ \
|
|||
|
|
static TypeName type_instance; \
|
|||
|
|
return &type_instance; \
|
|||
|
|
} \
|
|||
|
|
\
|
|||
|
|
TypeName(const TypeName&) = delete; \
|
|||
|
|
TypeName& operator=(const TypeName&) = delete
|
|||
|
|
|
|||
|
|
#endif // __SINGLETON_H__
|