gpt4 book ai didi

c++ - Qt-追加到QList

转载 作者:行者123 更新时间:2023-11-30 01:47:51 24 4
gpt4 key购买 nike

我从全局类中创建了 QList

global.h:

class CLastMessage
{
public:
QString id;
QString message;
};
typedef QList<CLastMessage> CLastMessageList;

我在另一个标题中调用了它:

message.h:

CLastMessageList m_lastMessage;

但我在将新值附加到此 Qlist 时遇到问题。在 message.cpp 我想附加新的 id 和消息,但我不知道如何以最好的方式做到这一点。例如我想向这个列表中添加新的 id。这是对的吗?

消息.cpp:

CLastMessageList m_lastMessage;
m_lastMessage.id = "1";

最佳答案

您的自定义类目前是可赋值的,因此您不需要显式复制构造函数或赋值运算符。

问题在于如何将项目添加到列表中:

CLastMessageList m_lastMessage; // this is declaring a new list
m_lastMessage.id = "1"; // this is invalid, as id is not a property of QList

此代码重新声明列表的对象 (m_lastMessage)。然后您尝试将变量设置为列表,但 id 不是列表的成员,而是您可以存储在列表中的对象的成员。因此,首先创建一个对象,然后将其添加到您的列表中:

CLastMessage message;
message.id = "1";
m_lastMessage.append(message); 

关于c++ - Qt-追加到QList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31113327/

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