如何将字符串转换为C++枚举类

   2024-10-07 6210
核心提示:要将字符串转换为C++枚举类,您可以使用一组if-else语句或者switch语句来实现。首先,定义一个枚举类,然后编写一个函数来将字符

要将字符串转换为C++枚举类,您可以使用一组if-else语句或者switch语句来实现。首先,定义一个枚举类,然后编写一个函数来将字符串转换为枚举类的值。下面是一个示例代码:

#include <iostream>#include <string>enum Fruit {    APPLE,    BANANA,    ORANGE};Fruit stringToEnum(const std::string& str) {    if (str == "APPLE") {        return APPLE;    } else if (str == "BANANA") {        return BANANA;    } else if (str == "ORANGE") {        return ORANGE;    } else {        // handle invalid string input        std::cerr << "Invalid input string" << std::endl;        return static_cast<Fruit>(-1); // or throw an exception    }}int main() {    std::string fruitStr = "BANANA";    Fruit fruit = stringToEnum(fruitStr);    switch (fruit) {        case APPLE:            std::cout << "It's an apple" << std::endl;            break;        case BANANA:            std::cout << "It's a banana" << std::endl;            break;        case ORANGE:            std::cout << "It's an orange" << std::endl;            break;        default:            break;    }    return 0;}

在上面的示例中,我们定义了一个Fruit枚举类,然后编写了一个stringToEnum函数来将字符串转换为对应的枚举值。在main函数中,我们将字符串"BANANA"转换为Fruit枚举值,并使用switch语句打印出相应的输出。您可以根据需要扩展这个示例代码来处理更多的枚举值和字符串。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号