【发布时间】:2013-11-30 01:54:00
【问题描述】:
我有一个用 C++ 编写的 FTP 应用程序。现在我正在通过 VS2010 的 Qt 插件向我的项目添加一个简单的 GUI。连接到服务器的机制非常简单。在输入 IP 和 PORT 后,连接已建立并创建了一个对象。这个对象(来自我编写的一个类)可以调用多个函数,例如:请求服务器上的可用文件、下载特定文件等。
我的问题是:如果该对象是在按下按钮(并调用它所链接的函数)后创建的,有没有办法返回该对象?当然有,但是应该如何以及在代码中的何处存储/声明它。这是代码行:
connect(ui.btn_connect,SIGNAL(clicked()),this,SLOT(on_SayConnect()));
如果我想使用连接 (SIGNAL/SLOT) 语法返回对象,我应该如何调用函数“on_SayConnect()”?提前谢谢你。
【问题讨论】:
-
要将对象返回到哪里?
-
这就是我问这个问题的原因。我需要将该返回的对象传递给其他函数(调用时,单击按钮后),但我不知道应该在哪里声明或存储它。
-
on_SayConnect() 应该将创建的对象传递到它应该去的任何地方。这应该与 on_SayConnect() 的调用方式无关(通过信号或其他方式)。
-
如果有两个插槽连接到信号,您认为会发生什么?哪个返回值是真正应该返回到信号发出位置的“真实”值?
标签: c++ qt object return signals-slots