1. 示例代码
1) errorRecord.h
- // 记录错误宏定义头文件
-
- #ifndef ERROR_RECORD_H
- #define ERROR_RECORD_H
-
- #include
- #include
- #include
-
- // Extracts the file name from the file path
- #define FILE_NAME(X) strrchr(X, '\\') ? strrchr(X, '\\') + 1 : X
-
- // Define DEBUG macro for enabling debug mode
- #define DEBUG
-
- // Print error message
- #ifdef DEBUG
- #define ERR_RECORD(ERR_CODE, ...) do { \
- printf(ANSI_COLOR_BRIGHT_CYAN \
- "\n\nFile: %-25s Func: %-20s Line: %-10d ErrorCode: %-8d ErrorInfo: ", \
- FILE_NAME(__FILE__), __func__, __LINE__, (ERR_CODE)); \
- printf(""__VA_ARGS__); \
- printf("\n" ANSI_COLOR_RESET); \
- PrintErrorCodeInfo(ERR_CODE); \
- } while (0)
- #else
- #define ERR_RECORD(ERR_CODE, FORMAT, ...)
- #endif
-
- // Function result status codes
- enum StatusCode {
- RET_OK = 0, // Operation successful
- ERR_NULL_