gpt4 book ai didi

c++ - 如何用 new 初始化 QVector> *matrix(作为类成员)?

转载 作者:行者123 更新时间:2023-11-30 03:58:21 30 4
gpt4 key购买 nike

我真的尝试了所有方法,但找不到解决方案,我尝试先初始化外部 QVector,然后初始化内部,但没有成功。

最佳答案

QVector *matrix (as class member) with new?

这里有一些问题,即:

  • 您不应在堆上分配 QVector(即作为 new 的指针)。

  • 您应该更多地使用 QStringList

我个人的建议是:

main.cpp

#include <QVector>
#include <QStringList>
#include <QDebug>

class Foo
{
public:
Foo() { qDebug() << matrix; }
private:
// Could be QStringLiteral, but you could also build it in the
// constructor if it is dynamic
QVector<QStringList> matrix{{"foo", "bar", "baz"}, {"hello", "world", "!"}};
};

int main()
{
Foo foo;
return 0;
}

主程序

TEMPLATE = app
TARGET = main
QT = core
CONFIG += c++11
SOURCES += main.cpp

构建并运行

qmake && make && ./main

输出

QVector(("foo", "bar", "baz"), ("hello", "world", "!"))

关于c++ - 如何用 new 初始化 QVector<QVector<QString>> *matrix(作为类成员)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27468393/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com