18 lines
692 B
C++
18 lines
692 B
C++
#pragma once
|
|
|
|
/**
|
|
* interface definition
|
|
*
|
|
*/
|
|
#define AS_INTERFACE(CLASS_NAME) \
|
|
public: \
|
|
virtual ~CLASS_NAME() {} \
|
|
protected: \
|
|
CLASS_NAME() {} \
|
|
CLASS_NAME(const CLASS_NAME&) = delete; \
|
|
CLASS_NAME(CLASS_NAME&&) = delete; \
|
|
CLASS_NAME& operator=(const CLASS_NAME&) = delete; \
|
|
CLASS_NAME& operator=(CLASS_NAME&&) = delete; \
|
|
public:
|
|
|