是否可以保持容器中的静态数组
Is it possible to keep in container static array?
我的意思是不在数组上保留指针
std::vector<int*> vector;
但是
std::vector<int[]> vector;
问题是在hash_map中保留这样的数组,以便在插入时不是比较指针,而是在我尝试使用时比较指针
std::hash_map<std::vector<BYTE>,std::string> xxx
我有个错误。
您不能执行std::vector<int[]> vector
。您必须指定数组的大小,以便像std::vector<int[5]> vector
这样进行编译。
然而,这是一个坏主意,因为您不能将数组分配给其他数组,等等,当您尝试使用vector时,您会遇到各种错误。
相反,使用vector<vector<int>> vector
,或者在C++11中使用vector<std::array<int, 5>> vector
。
此外,我不知道你使用的是hash_map
的什么实现,所以我不知道上面的解决方案是否适用于你的情况。(另外,C++11有一个无序映射,所以这可能更可取)
相关文章:
- C++17中函数模板中的静态数组初始化(MSVC 2019)
- 静态数组的自由动态数组
- 如何在C++中删除静态数组?
- 为什么 &a 和 c++ 中的静态数组相同?
- 为什么静态数组成员变量在调用对象的实例后不显示任何内容?
- C++ 返回指向函数内定义的静态数组的指针是否有效?
- 将在堆栈上声明的元素添加到静态数组
- const_cast静态数组以添加恒常性
- 动态分配的数组和静态数组之间的区别
- C++编译时使用 constexpr 字符数组指针分配静态数组?
- 我可以使用 constexpr 函数声明一个静态数组吗?
- 使用 lambda 初始化静态数组
- 为什么从函数返回数组时需要将数组声明为静态数组.(C++)
- 根据模板值确定的静态数组大小
- 如何使用 PHP-CPP 在 PHP 类中添加静态数组
- 包含不同大小静态数组的类的多个实例
- 从我的对象返回静态数组
- 如何避免在类中显式指定静态数组的大小
- 编译类型的时静态数组
- 来自函数参数的 C++ 静态数组声明