提交 2e9c26bb 编写于 作者: G gruminions 提交者: Dengchengliang

framework: add exception check for out of range argument

上级 053c0b44
......@@ -201,10 +201,14 @@ int main(int argc, char** argv) {
case 'r':
try {
opt_rate = std::stof(optarg);
} catch (std::invalid_argument& ia) {
} catch (const std::invalid_argument& ia) {
std::cout << "Invalid argument: -r/--rate " << std::string(optarg)
<< std::endl;
return -1;
} catch (const std::out_of_range& e) {
std::cout << "Argument is out of range: -r/--rate "
<< std::string(optarg) << std::endl;
return -1;
}
break;
case 'b':
......@@ -216,10 +220,14 @@ int main(int argc, char** argv) {
case 's':
try {
opt_start = std::stoi(optarg);
} catch (std::invalid_argument& ia) {
} catch (const std::invalid_argument& ia) {
std::cout << "Invalid argument: -s/--start " << std::string(optarg)
<< std::endl;
return -1;
} catch (const std::out_of_range& e) {
std::cout << "Argument is out of range: -s/--start "
<< std::string(optarg) << std::endl;
return -1;
}
break;
case 'd':
......@@ -229,6 +237,10 @@ int main(int argc, char** argv) {
std::cout << "Invalid argument: -d/--delay " << std::string(optarg)
<< std::endl;
return -1;
} catch (const std::out_of_range& e) {
std::cout << "Argument is out of range: -d/--delay "
<< std::string(optarg) << std::endl;
return -1;
}
break;
case 'h':
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册