C++ 如何为向量数组指定大小?

C++ 如何为向量数组指定大小?,c++,arrays,vector,C++,Arrays,Vector,您好,我想在我的向量数组中设置18个元素,但我不确定如何准确设置。会是这样吗 vector<byte> Clients(18); vector<byte> Clients[18]; vector客户端(18); 还是像这样 vector<byte> Clients(18); vector<byte> Clients[18]; vector客户端[18]; 向量不称为向量数组。它们通常在后台实现为数组,但这不会改变它们的调用方式 要回答您的

您好,我想在我的向量数组中设置18个元素,但我不确定如何准确设置。会是这样吗

vector<byte> Clients(18);
vector<byte> Clients[18];
vector客户端(18);
还是像这样

vector<byte> Clients(18);
vector<byte> Clients[18];
vector客户端[18];

向量不称为向量数组。它们通常在后台实现为数组,但这不会改变它们的调用方式

要回答您的问题,要更改向量的大小,可以使用成员函数

std::vector<int> myvector;
myvector.resize(5);
通常,您只需将内容推入向量,而不必设置大小。例如:

std::vector<int> myvector;
for (int i = 0; i < 5; i++) {
    myvector.push_back(
}
// you now have a vector with a size of 5 that has initialized 
// values at indices 0 through 4, inclusive.
std::vector myvector;
对于(int i=0;i<5;i++){
myvector.push_向后推(
}
//现在有一个大小为5的向量已初始化
//指数0到4处的值,包括在内。

什么是“向量数组”?是向量数组还是只有一个向量?取决于你所说的“向量数组”。是向量数组还是你正在尝试设置向量的大小?我不想设置一个向量数组来容纳18个元素。啊,我现在明白了。谢谢:)还有一件事。我将如何在我的类中实现它,以及何时调用它,例如Clients(3.Test();客户机中的3个(3)。是否将其存储在向量中?您可以使用
[]
运算符以与数组相同的方式访问向量的元素。您还可以使用
.at
成员函数。要回答实际问题,
向量客户端(18)
创建一个包含
18
元素的向量,
向量客户端(18,0)
将创建它们,并将它们全部初始化为
0
。没有理由喜欢使用默认构造函数,然后执行
resize
,尽管了解这两种方法很好。感谢您添加@MattMcNabb,我总是忘记初始化的构造函数方法,因为我几乎总是将东西推入/弹出向量,而不是设置大小。