如何初始化数组向量 [英] How to initialize a vector of array
本文介绍了如何初始化数组向量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好!
我想创建一个数组向量
vector< BYTE [ 6 跨度>]> CKEY;
BYTE keyTemp [ 6 ];
memset(keyTemp,0xFF, sizeof (keyTemp)); // 键是FFF ... FF
cKey.push_back(keyTemp);
但是,push_back函数显示错误
错误C3074: array 只能用初始化列表初始化
如何初始化向量数组?
解决方案
似乎无法按照您的方式初始化数组。
查看此链接错误C3074:数组只能初始化为初始化列表 [ ^ ]
在你的情况下它应该是
标准::矢量<第一d :: array xmlns:std = #unknown 跨度>><字节,>> cKey {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
< / std :: array>
或者
std :: array<字节,> keyTemp {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
cKey.push_back(keyTemp);
vector< byte *> CKEY; // 更改此处
BYTE keyTemp [ 6 跨度>];
memset(keyTemp,0xFF, sizeof (keyTemp)); // 键是FFF ... FF
cKey.push_back(keyTemp);
Hi guy !
I want to create a vector of array
vector<BYTE[6]> cKey;
BYTE keyTemp[6];
memset(keyTemp, 0xFF, sizeof(keyTemp)); // Key is FFF...FF
cKey.push_back(keyTemp);
but, push_back function is show error
Error C3074: an array can only be initialized with an initializer-list
How to initialize a vector of array ?
解决方案
Seems like it is not possible to initialize the array the way you are doing it.
See this link error C3074: an array can only be initialized with an initializer-list[^]
In your case it should be
std::vector<std::array xmlns:std="#unknown"><byte,>> cKey { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF }; </std::array>
or maybe
std::array<byte,> keyTemp { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF }; cKey.push_back(keyTemp);
vector<byte*> cKey; // Change here BYTE keyTemp[6]; memset(keyTemp, 0xFF, sizeof(keyTemp)); // Key is FFF...FF cKey.push_back(keyTemp);
这篇关于如何初始化数组向量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文