gpt4 book ai didi

c++ - 使用信号和槽更新指针

转载 作者:太空狗 更新时间:2023-10-29 23:48:05 27 4
gpt4 key购买 nike

我是 Qt 的新手;请帮助我解决问题。

我正在使用线程在后台执行密集型操作。同时我想更新 UI,所以我使用 SIGNALS 和 SLOTS。为了更新 UI,我发出一个信号并更新 UI。

让我们考虑下面的示例代码,

struct sample
{
QString name;
QString address;
};

void Update(sample *);

void sampleFunction()
{
sample a;
a.name = "Sachin Tendulkar";
a.address = "India"
emit Update(&a);
}

在上面的代码中,我们创建了一个本地对象并传递了一个本地对象的地址。在 Qt 文档中,它说当我们发出信号时,它将被放入队列中,稍后它将被传递到窗口。由于我的对象在本地范围内,一旦超出范围就会被删除。

有没有办法在信号中发送指针?

最佳答案

你坚持做错事,为什么?只需发送样本本身:

void Update(sample);
//...
sample a("MSalters", "the Netherlands");
emit Update(a);

关于c++ - 使用信号和槽更新指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2637218/

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