阅读量:0
在C++中,通常使用返回值来表示函数执行过程中的错误。常见的做法是使用整型值来表示错误码,然后根据不同的错误码来返回相应的错误信息。例如,可以定义一个枚举类型来表示不同的错误码,然后编写一个函数来根据错误码返回相应的错误信息。
#include <iostream> enum ErrorCode { SUCCESS = 0, INVALID_INPUT = 1, FILE_NOT_FOUND = 2, PERMISSION_DENIED = 3 }; std::string getErrorMessage(ErrorCode code) { switch (code) { case SUCCESS: return "Success"; case INVALID_INPUT: return "Invalid input"; case FILE_NOT_FOUND: return "File not found"; case PERMISSION_DENIED: return "Permission denied"; default: return "Unknown error"; } } int readFile(std::string filename) { // 读取文件逻辑 if (/* 文件不存在 */) { return FILE_NOT_FOUND; } else if (/* 无权限 */) { return PERMISSION_DENIED; } else { return SUCCESS; } } int main() { std::string filename = "test.txt"; int result = readFile(filename); if (result != SUCCESS) { std::cout << "Error: " << getErrorMessage(result) << std::endl; } else { std::cout << "File read successfully" << std::endl; } return 0; }
在上面的例子中,我们定义了一个枚举类型ErrorCode
来表示不同的错误码,然后编写了一个getErrorMessage
函数来根据错误码返回错误信息。在readFile
函数中,根据不同的情况返回不同的错误码,然后在main
函数中根据返回的错误码打印相应的错误信息。这样就实现了错误码和错误信息的关联。