gpt4 book ai didi

c++ - 指定对 std::to_string() 的补充?

转载 作者:太空狗 更新时间:2023-10-29 20:29:58 24 4
gpt4 key购买 nike

在 C++11 中,因为有一个标准 std::to_string() ,我为枚举类和其他实现有意义的小数据类重载了这个函数。

我的问题是,作为 std::to_string() 的补充,您实现了什么?

某种 from_string()(std 中不存在)或者是否有更合适的标准接口(interface)在整个类中实现?

最佳答案

使用的标准使用旧 C 中使用的简洁命名方案。所以你有

std::string to_string( int value );

你有

int std::stoi(std::string);

看这里

http://en.cppreference.com/w/cpp/string/basic_string/stol

所以你可能有。

std::string to_string(my_enum);

你可能有

my_enum stomy_enum(std::string)

虽然我会说的很冗长

my_enum string_to_my_enum(std::string)

或者只使用流

std::stringstream ss(my_str);
if(ss >> emun_) //conversion worked

定义流运算符还允许使用来自 boost 的词法转换;

enum_ = boost::lexical_cast<my_enum>(my_str);

关于c++ - 指定对 std::to_string() 的补充?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8492060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com