gpt4 book ai didi

c++ - if/else 中的流提取

转载 作者:行者123 更新时间:2023-11-27 23:33:28 25 4
gpt4 key购买 nike

假设流提取不会失败,这会不会

if( !(stream >> token) )
throw runtime_error( "Unexpected end of recipe." );
else if( token == "something" )
// do something
else
throw runtime_error( "Unknown token" );

像这样工作

if( !(stream >> token) )
throw std::runtime_error( "Unexpected end of recipe." );

if( token == "something" )
// do something
else
throw std::runtime_error( "Unknown token" );

(流 = std::stringstream 和 token = std::string)预期结果为 token包含流中的下一个... token ...?有没有更好的方法来处理错误?喜欢cerr << "error whatever" << endl; exit();或者什么的,或者是我的std::runtime_error够好了吗?

最佳答案

是的,逻辑完全一样。

而且我永远不会调用 exit() - 至少在您的代码中,异常可以被其他代码捕获,而不仅仅是终止应用程序。您永远不知道将来是否会在更大的应用程序中使用此代码,因此最好保持您的选择开放;)

关于c++ - if/else 中的流提取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3093959/

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