#ifndef _BASE_BASE_H_ #define _BASE_BASE_H_ #include #include #define CLOSE_ACTIVITY_WITH(activity_ptr) \ EASYUICONTEXT->closeActivity(class_name(activity_ptr).c_str()) /** * 数组长度 */ template int array_length(T&array) { return sizeof(array) / sizeof(array[0]); } /** * 释放指针,并将指针置为空 */ template void deleteptr(Ptr *p) { if (p == NULL) { return; } if(*p == NULL) { return; } delete *p; *p = NULL; } /** * 通过typid获得类名,不具备通用性 */ template std::string class_name(Ptr ptr) { if (ptr == NULL) { return ""; } char* begin = (char*)typeid(*ptr).name(); while (isdigit(*begin)) { ++begin; } return begin; } //} /* namespace base */ #endif