【发布时间】:2013-06-08 21:49:28
【问题描述】:
我提到了我之前提出的一个问题,我问的是用空值初始化struct Vanish 向量的最佳方法:
Is using assign() a good way to initialise my C++ vector of structs?
我接受了答案:
BigClass::BigClass()
: tovanish(MAX_VANISH)
{
}
我现在的问题是,如果我想初始化一个 struct Vanish 的向量,作为我班级的成员 (BigClass),但这次用值 {3,3) 初始化每个 Vanish }。我有:
std::vector<std::vector<Vanish>> vanish_vectors;
在我的构造函数中我尝试过:
BigClass::BigClass():
vanish_vectors(NUM_COLUMNS, (NUM_ROWS, (3,3)))
{
}
旨在创建 NUM_COLUMNS 个向量,并且在每个向量中将 NUM_ROWS 的 struct Vanish 初始化为值 {3, 3}。
使用调试器,我发现这确实创建了 NUM_COLUMNS 个向量。
但是,这些向量中的每一个都包含 3 个Vanish 结构,全部归零。
用值初始化那些 Vanish 结构的最佳方法是什么?
【问题讨论】: