【发布时间】:2015-12-16 23:12:36
【问题描述】:
我想要一个包含字符串的二维向量,所以我尝试了类似的方法:
QVector<QVector<QString*> > register_options(8, QVector<QString*>(8)); //getting 'expected identifier before numeric constant'
QVector<QVector<QString> > register_options; // getting 'field has incomplete type'
这是我找到的初始化here
我还读到它不可能在类范围内没有初始化向量,应该在构造函数中完成,我理解但我无法在类范围内定义 var 的原型。
我也试过
//header
QVector<QString> register_bits; // field has incomplete type
QVector<QVector<QString> > register_options; // field has incomplete type
//source
registers::registers() : register_bits(8, 0), register_options(8, register_bits)
{ //...
所以我的问题是:如何在类范围内定义向量,然后在构造函数中初始化?
【问题讨论】:
-
你熟悉 C++ 初始化列表吗?也许这就是你需要的。但是,我不知道 Qt 是如何工作的,只是从最后一句话得出的结论。
-
编辑后:标题是指在类中,还是全局范围?
-
"has incompelte type" 建议您忘记包含必需的标题
-
@errikos 固定标题,我的意思是类范围
-
@M.M thx 这也让我想到了解决方案,我忘记了包含 QString 和 QVector 的头文件