c++ - 如何判断数组元素的类型?

标签 c++ arrays c++11 vector

我无法获取元素的类型。此解决方案返回对元素类型的引用。

int arr[] = { 0, 1, 2, 3, 4, 5 };
using arrElemType = decltype(*arr);
vector<arrElemType> vec(std::cbegin(arr), std::cend(arr));

最佳答案

尝试以下操作

using arrElemType = std::remove_reference<decltype( *arr )>::type;

typedef std::remove_reference<decltype( *arr )>::type arrElemType;

您需要包含 header <type_traits>

关于c++ - 如何判断数组元素的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22410531/

相关文章:

javascript - 如何显示从 *ngFor Loop Angular 6 生成的相似结果的计数?

c++ - 将类模板转换为 SFINAE 和构造函数委托(delegate),现在出现编译器错误

c++ - 使用 std::transform 构造 std::vector。可以返回未命名的结果吗?

javascript - 将对象的对象转换为数组(特殊示例)

arrays - Swift UISlider 从数字数组中获取值

c++ - 如何为包装需要 2 个参数的 c 函数的 unique_ptr 类成员创建自定义删除器?

c++ - 终止在无限循环中运行的 std::thread

c++ - 使用 constexpr 查找表

C++ Qt 派生类

c++ - 传递重载成员函数的函数指针?