我有一个像这样的代码:
std::tie(info.amount, info.price) = GetAmountAndPrice();
并且GetAmountAndPrice
正在返回std::pair
,所以它起作用了。
但是有一个代码审查建议将返回类型更改为 struct 所以很清楚返回值代表什么,我认为这是很常见的一点。
但是随着将返回类型从更改std::pair
为某个结构,我不能使用std::tie
来设置info
.
(而且我显然不想创建返回结构的临时实例来加载值。)
什么是解决这个问题的简洁现代方法?我们使用 C++17,但我什至对 C++20 感到好奇,如果它有所改进的话。