// -*- C++ -*- #ifndef __cxz_base_def_h__ #define __cxz_base_def_h__ #include #define DEBUG_MODE_X #ifdef DEBUG_MODE_X #include #ifndef CHECK #define CHECK std::cout << __FILE__ << ": @" << __LINE__ << " in " << __func__ << std::endl; #endif #ifndef VCHECK #define VCHECK(a) std::cout << __FILE__ << ": @" << __LINE__ \ << " in " << __func__ << ": " << #a << " = " << a << std::endl; #endif #else #define CHECK #define VCHECK(a) #endif #define DEFAULT_MEMBERS(__class_name__) __class_name__() = default; \ __class_name__(const __class_name__& in) = default; \ __class_name__& operator=(const __class_name__& in) = default; \ __class_name__(__class_name__&& in) = default; \ __class_name__& operator=(__class_name__&& in) = default #define DEFAULT_MEMBERS_X(__class_name__) __class_name__(const __class_name__& in) = default; \ __class_name__& operator=(const __class_name__& in) = default; \ __class_name__(__class_name__&& in) = default; \ __class_name__& operator=(__class_name__&& in) = default #endif