本文介绍了我们在c ++ 17中有自动数组吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

考虑以下代码:

auto numbers = {1, 2, 3, 4};    // 'numbers' is an std::intializer_list<int>
auto num_array[] = {1, 2, 3, 4} // error -> declared as an array of 'auto'

为什么存在此限制?

推荐答案

使用C ++ 17和,效果很好:

With C++17 and class template argument deduction, this works just fine:

#include <array>
std::array arr{1, 2, 3, 4};
int i = arr.size();  // 4

这篇关于我们在c ++ 17中有自动数组吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-25 08:02