0

我知道以下语句被解释为函数声明而不是变量定义

boost::system::system_error sys_err(boost::system::error_code());

有什么简单的技巧可以把它变成我想要的单行变量定义吗?我不太喜欢文案

boost::system::system_error sys_err(0, boost::system::system_category());
4

1 回答 1

3

只要您的编译器至少支持 C++11,Dúthomhas 的回答就可以。对于更通用的解决方案,您可以将参数包装在一对额外的括号中: boost::system::system_error sys_err((boost::system::error_code()));

于 2015-11-14T17:36:10.240 回答