std :: make_array的目的是什么?在C ++ 20中仍需要吗?

问题描述 投票:3回答:1

我刚刚发现,在库基础TS v2中,有一个make_arraymake_array)模板,该模板可从其参数推导出数组类型。我想主要目的是启用std::experimental::make_array的用法,类似于cppreference上的示例:

auto

我没有看到其他动机吗?

[借助C ++ 20中的新型演绎工具,人们还能指望auto x = std::experimental::make_array(1,2,3,4,5); 有一天会成为标准,还是已经过时了?

c++ templates c++-standard-library
1个回答
5
投票

[make_arraymake_array(1,'2',3,4,5)将是有效的,而make_array<float>(1,'2',3,4,5)Class Template Argument Deduction (CTAD)仅允许相同类型。

© www.soinside.com 2019 - 2024. All rights reserved.