std::stod
是 C++ 标准库中的一个函数,用于将字符串转换为 double
类型的浮点数。如果传递给 std::stod
的字符串不能转换为有效的浮点数,该函数会抛出一个 std::invalid_argument
异常。
例如:
#include#include #include int main() { try { std::string str = "abc"; double d = std::stod(str); std::cout << "Converted string to double: "<< d << std::endl; } catch (const std::invalid_argument& e) { std::cerr << "Invalid argument: " << e.what() << std::endl; } catch (const std::out_of_range& e) { std::cerr << "Out of range: " << e.what() << std::endl; } return 0; }
在这个例子中,字符串 “abc” 不能转换为有效的浮点数,因此 std::stod
抛出一个 std::invalid_argument
异常。程序会捕获这个异常并输出错误信息。